[SERVER-9741] verify write intents are efficient for btree bucket operations. Created: 21/May/13  Updated: 06/Dec/22  Resolved: 14/Sep/18

Status: Closed
Project: Core Server
Component/s: Index Maintenance, MMAPv1
Affects Version/s: 2.4.3
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: Dwight Merriman Assignee: Backlog - Storage Execution Team
Resolution: Won't Fix Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
Assigned Teams:
Storage Execution
Participants:

 Description   

with indexed arrays ("multikeys") the number of btree buckets hit by a single update can be very high.

now if a single key were added to a bucket, efficiently, that might be a very small amount of data to journal. but if we did something akin to a memmove() then the data to journal might be quite large. The request with this ticket is to verify that we don't do the latter; and if we do, to improve it by logging a "memmove" op instead of a significant % of the total data in the btree bucket. perhaps that doesn't work, the memmove op, given group commits, but the concept of auditing this is sound, and then we figure it out from there. perhaps it is already efficient, not sure.

subitem: check the "merge" code with regards to the above. merging likely requires significant journaling. if we are near a commitIfNeeded limited we might simply skip a few merges and do them later?



 Comments   
Comment by Dwight Merriman [ 09/Dec/15 ]

the comment/request is valid and has been considered, but not implemented afaik, in mmap.

i do not know precisely what WildTiger does for this. Perhaps someone can chime in on that. It may be efficient for that already.

Given that WT is default in v3.2, I suspect the priority would be that these are efficient in WT, before upgrading mmap.

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