[SERVER-21881] dbhash checking in FSM framework doesn't handle TTL deletes Created: 13/Dec/15  Updated: 21/Nov/16  Resolved: 09/Feb/16

Status: Closed
Project: Core Server
Component/s: Testing Infrastructure
Affects Version/s: 3.2.0
Fix Version/s: 3.2.4, 3.3.2

Type: Bug Priority: Major - P3
Reporter: Max Hirschhorn Assignee: Max Hirschhorn
Resolution: Done Votes: 0
Labels: test-only
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
depends on SERVER-21419 The ephemeralForTest storage engine s... Closed
is depended on by SERVER-21809 Run FSM parallel mode against replica... Closed
Related
is related to SERVER-21876 CheckReplDBHash testing hook doesn't ... Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Backport Completed:
Sprint: QuInt E (01/11/16), Query F (02/01/16), Query 10 (02/22/16)
Participants:
Linked BF Score: 0

 Description   

It's possible for the dbhash checking in the FSM framweork to race with the TTL monitor on a replica set node, which could result in spurious failures.



 Comments   
Comment by Githook User [ 20/Feb/16 ]

Author:

{u'username': u'visemet', u'name': u'Max Hirschhorn', u'email': u'max.hirschhorn@mongodb.com'}

Message: SERVER-21881 Use fsync+lock when checking dbhash in concurrency suite.

The fsync+lock operation prevents the TTL monitor from running on the
primary after awaiting replication and before getting the dbhashes from
all the nodes in the replica set. Otherwise, a primary's dbhash can
reflect a delete operation that hasn't yet replicated to all of the
secondaries, leading to a spurious dbhash mismatch.

(cherry picked from commit 41f296cdc37f92f8de0ea3d17109693c4f0befb6)
Branch: v3.2
https://github.com/mongodb/mongo/commit/86884b98e44f4a77f5b66970a6138874f2b98cf3

Comment by Githook User [ 09/Feb/16 ]

Author:

{u'username': u'visemet', u'name': u'Max Hirschhorn', u'email': u'max.hirschhorn@mongodb.com'}

Message: SERVER-21881 Re-enable the indexed_insert_ttl.js FSM workload.

This reverts commit b06952729f5388419f1688e152273b9bb2910739.
Branch: master
https://github.com/mongodb/mongo/commit/5d4f65ced468140ac3c67878f385c6b6bc52167d

Comment by Githook User [ 09/Feb/16 ]

Author:

{u'username': u'visemet', u'name': u'Max Hirschhorn', u'email': u'max.hirschhorn@mongodb.com'}

Message: SERVER-21881 Use fsync+lock when checking dbhash in concurrency suite.

The fsync+lock operation prevents the TTL monitor from running on the
primary after awaiting replication and before getting the dbhashes from
all the nodes in the replica set. Otherwise, a primary's dbhash can
reflect a delete operation that hasn't yet replicated to all of the
secondaries, leading to a spurious dbhash mismatch.
Branch: master
https://github.com/mongodb/mongo/commit/41f296cdc37f92f8de0ea3d17109693c4f0befb6

Comment by Githook User [ 06/Jan/16 ]

Author:

{u'username': u'visemet', u'name': u'Max Hirschhorn', u'email': u'max.hirschhorn@mongodb.com'}

Message: SERVER-21881 Temporarily disable the indexed_insert_ttl.js FSM workload.
Branch: master
https://github.com/mongodb/mongo/commit/b06952729f5388419f1688e152273b9bb2910739

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