Skip to content

Conversation

@labkey-matthewb
Copy link

Rationale

Implement support for tables with BIGINT primary keys. E.g. RowId/ObjectId BIGSERIAL
Because of the large number of shared classes, utilities, services, etc, a lot of code was migrated to used Long. Code should now assume that an generic integer object key (as opposed to a known table PK), could be a Long.

This PR is aimed at a) Supporting ObjectID BIGSERIAL b) making it possible (but not automatic) to migrate tables that want to use RowId BIGSERIAL.

Related Pull Requests

Changes

New safer collection classes
class Int/LongHashMap
class Int/LongHashSet
explicit Class for key values in Map Objects returned by BaseSelector
Selector.getValueMap(Class key)
safe "cast" using asInteger or asLong, as opposed to (Integer) and (Long)

@labkey-matthewb labkey-matthewb merged commit 4883710 into develop Aug 14, 2025
8 of 9 checks passed
@labkey-matthewb labkey-matthewb deleted the fb_long_is_the_new_int branch August 14, 2025 00:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants