Type: New Feature
Status: In Progress
Priority: Major - P3
Affects Version/s: None
Fix Version/s: None
In tiered storage we have a configuration setting local_retention whose original intent was to allow a form of caching of flushed objects. That was never implemented in POC1. This ticket is to implement that functionality.
This ticket is somewhat related to
WT-7957 because that added code to look in the local database if it cannot be found in the tiered storage area. Likely the change in that ticket will be move before checking the tiered area.
This ticket has several components:
1. Looking in the local database first. This changes and/or undoes the fix in
2. Changes to the internal tiered thread to support/queue work units to remove the local copy of the object after local_retention seconds. This must make sure the object is actually already copied to tiered storage (or only enqueue after it is successfully copied at flush_finish).
3. Considerations about this form of caching versus the caching in the tiered layer. Having both may be desirable. Do we want both? Is there overlap in functionality?
4. Enhance existing and adding new tests.