[SERVER-53982] RecordId class to support ObjectId type Created: 22/Jan/21  Updated: 29/Oct/23  Resolved: 29/Jan/21

Status: Closed
Project: Core Server
Component/s: Storage
Affects Version/s: None
Fix Version/s: 4.9.0

Type: New Feature Priority: Major - P3
Reporter: Gregory Wlodarek Assignee: Louis Williams
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-53986 Use ObjectId's as table keys for time... Closed
Duplicate
is duplicated by SERVER-52725 Delete unused grouped collection code Closed
Problem/Incident
Backwards Compatibility: Fully Compatible
Sprint: Execution Team 2021-02-08
Participants:
Linked BF Score: 0

 Description   

The RecordId class is used in a vast number of places throughout the server codebase. To avoid a complicated refactor, modify the RecordId class internally so that users are unaware of its underlying type. To support compatibility with existing record stores that use a 64-bit int key format and new record stores that will use ObjectId, the RecordId class should be modified to store either an int64_t or an ObjectId.



 Comments   
Comment by Githook User [ 29/Jan/21 ]

Author:

{'name': 'Louis Williams', 'email': 'louis.williams@mongodb.com', 'username': 'louiswilliams'}

Message: SERVER-53982 RecordId supports ObjectId type

Allow RecordId to store either an int64_t or ObjectId. This type is
compact and cheap to copy. It assumes that callers who attempt to
observe the underlying data are aware of its underlying type.
Branch: master
https://github.com/mongodb/mongo/commit/cb101e683e52c8a5b4f281015803597003c66785

Comment by Githook User [ 27/Jan/21 ]

Author:

{'name': 'Louis Williams', 'email': 'louis.williams@mongodb.com', 'username': 'louiswilliams'}

Message: SERVER-53982 Delete prefixed RecordStore code
Branch: master
https://github.com/mongodb/mongo/commit/7bda8e0a10dd620716b7530b35eac70c75810696

Generated at Thu Feb 08 05:32:21 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.