-
Type: Improvement
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
Labels:
In WT-3555 we tried to avoid making a copy of table URIs every time a cursor is opened.
That change turned out to be unsafe, because we open a "file:" cursor in that case and it does not reference the "table:" dhandle. As a consequence, the table dhandle can be closed by a sweep while there is a file cursor open with a pointer to its URI. WT-3730 reverted the original change.
Since there was a measurable performance improvement from this change, and we don't want table dhandles to be discarded when they are in use by cursors, we should investigate reinstating the change in WT-3555 but further having the cursor keep a reference to the "table:" dhandle and only releasing it on close.