-
Type: Improvement
-
Resolution: Fixed
-
Priority: Minor - P4
-
Affects Version/s: None
-
Component/s: None
-
Fully Compatible
Currently the query cache, as implemented by Mongoid, duplicates a portion of driver's cursor code plus adds the query caching on top. This has two issues:
1. The code that was copied is by now outdated. It uses legacy read retries, performs server selection in an outdated way, etc.
2. Changes to the driver can break the query cache, due to the query cache's reliance on driver internals.
Since the query cache operates on collection/operation/cursor level, it can be implemented in the driver, with Mongoid only exposing the implementation using a (more) convenient API.
- depends on
-
RUBY-2302 Write scope for moving Query Cache to Driver
- Closed
-
RUBY-2308 Query Cache Project Design Document
- Closed
- duplicates
-
RUBY-2131 Implement query cache in driver
- Closed
- is depended on by
-
RUBY-2131 Implement query cache in driver
- Closed
-
RUBY-2211 Use namespace returned from find command in getMore
- Closed
- is related to
-
MONGOID-4785 Mongoid forces legacy read retries regardless of driver configuration
- Closed
-
RUBY-1851 Restore cursor's ability to be iterated more than once
- Closed
- links to