[SERVER-7138] Performance -- make ccByLoc a collection-level structure Created: 24/Sep/12  Updated: 06/Dec/22  Resolved: 14/Nov/16

Status: Closed
Project: Core Server
Component/s: Index Maintenance, Performance, Storage
Affects Version/s: 2.0.7, 2.2.0
Fix Version/s: None

Type: Improvement Priority: Minor - P4
Reporter: Tad Marshall Assignee: Backlog - Storage Execution Team
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Related
Assigned Teams:
Storage Execution
Participants:

 Description   

The internal Database structure contains a map with the typedef CCByLoc and the name ccByLoc. This map is used to track client cursors that are using indexes, so that when an index is changed by deleting a btree bucket, all possible users of that bucket may be notified.

The ClientCursor::informAboutToDeleteBucket() routine will log a message saying "perf warning: byLoc.size=<size> in aboutToDeleteBucket" under some conditions. The "perf warning" is presumably because this may be expensive if there are a lot of entries in the map.

We could change the code so that fewer calls were needed by associating this map at a finer level of granularity, for example at the collection level.

We should probably remove this log message in any case, because there is nothing a user can really do about it and it isn't an error.


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