-
Type:
Bug
-
Status: Done
-
Priority:
Medium
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: None
-
Component/s: None
-
Labels:None
Due to the changes in wiredTiger's snapshot manager and changes in corresponding unittests some tests are failing for mongo-rocks with "std::exception: _Map_base::at" string in error message.
Affected tests (list is probably incomplete):
- storage_rocks_engine_test/SnapshotManagerTests/BasicFunctionality
- storage_rocks_engine_test/SnapshotManagerTests/FailsAfterDropAllSnapshotsWhileYielded
- storage_rocks_engine_test/SnapshotManagerTests/UpdateAndDelete
- no_passthrough_rocksdb.jstests/noPassthrough/change_stream_feature_compatibility_version.js
- no_passthrough_rocksdb.jstests/noPassthrough/change_streams_require_majority_read_concern.js
- no_passthrough_rocksdb.jstests/noPassthrough/read_majority.js
- no_passthrough_rocksdb.jstests/noPassthrough/read_majority_reads.js
More details:
BasicFunctionality test fails on the first ASSERT
because itCountOn() creates cursor
then in cursor's constructor it tries to get sequence number from the current snapshot
but _snapshots and _snapshotMap in RocksSnapshotManger are empty
because RocksSnapshotManager::createSnapshot was deleted in r3.6.0-rc0 (https://github.com/mongodb/mongo/commit/7ef892d32c)
In other words since createSnapshot was deleted RocksSnapshotManager never contains any snapshots and this causes exception on cursor creation.
Another thing to check is why we need sequence number in cursor - probably we will eliminate this as part of this issue fix.
- relates to
-
PSMDB-183 Crash in 3.6 MongoRocks snapshot manager
-
- Done
-