[SERVER-67623] Use uint64_t instead of RecordId in column index read path Created: 28/Jun/22  Updated: 29/Oct/23  Resolved: 19/Aug/22

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 6.1.0-rc0

Type: Task Priority: Major - P3
Reporter: Ian Boros Assignee: Parker Felix
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Problem/Incident
causes SERVER-69275 Coverity analysis defect 128677: Unin... Closed
Backwards Compatibility: Fully Compatible
Sprint: QE 2022-07-11, QE 2022-07-25, QE 2022-08-08, QE 2022-08-22
Participants:

 Description   

The column index uses "Row IDs" which are always 64 bit integers. Since we're guaranteed that Row IDs are 64 bit integers, we do not have to pay the cost of copying/passing around RecordIds on the read path.

Eventually when we support clustered collections in column indexes, we will (very likely) map these Row IDs to the RecordId in a special part of the index.

We will benchmark to get a rough idea of the performance improvement from this change.



 Comments   
Comment by Githook User [ 18/Aug/22 ]

Author:

{'name': 'Parker Felix', 'email': 'parker.felix@mongodb.com', 'username': 'parker-felix'}

Message: SERVER-67623 Use int64_t instead of RecordId in column index read path
Branch: master
https://github.com/mongodb/mongo/commit/582fc560a31731a674e8e0bfac78981aff2b9fe8

Generated at Thu Feb 08 06:08:37 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.