[SERVER-31007] Calculate rollback time limit correctly Created: 08/Sep/17  Updated: 30/Oct/23  Resolved: 14/Apr/18

Status: Closed
Project: Core Server
Component/s: Replication
Affects Version/s: None
Fix Version/s: 3.7.4

Type: Bug Priority: Major - P3
Reporter: Judah Schvimer Assignee: Vesselina Ratcheva (Inactive)
Resolution: Fixed Votes: 0
Labels: rollback-non-functional
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Documented
is documented by DOCS-11620 Docs for SERVER-31007: Calculate roll... Closed
Related
related to SERVER-33812 First initial sync oplog read batch f... Closed
is related to SERVER-35584 Increase replication rollback time limit Closed
is related to SERVER-31040 replace rollback time limit with oper... Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Repl 2018-04-09, Repl 2018-04-23
Participants:
Linked BF Score: 19

 Description   

We limit rollbacks to 30 minutes. Currently we measure the difference in time between the end of the sync source's oplog and the rolling back node's oplog: https://github.com/mongodb/mongo/blob/955dfb45f2f67d2f4570912dbcddecbf3e7bb116/src/mongo/db/repl/roll_back_local_operations.cpp#L97-L108. We should really be measuring the difference between the common point and the end of the rolling back node's oplog.

While we are doing this, we should make the limit configurable.



 Comments   
Comment by Kyle Suarez [ 17/Apr/18 ]

The 3.7.4 release is cooking in the oven; does that mean this commit made it in? I think that means we need to update the fixVersion here.

Comment by Githook User [ 14/Apr/18 ]

Author:

{'email': 'vesselina.ratcheva@10gen.com', 'name': 'Vesselina Ratcheva', 'username': 'vessy-mongodb'}

Message: SERVER-31007 Calculate rollback time limit correctly
Branch: master
https://github.com/mongodb/mongo/commit/f7593edc6c1dfa32077dee85b66255086334b8f9

Comment by Andy Schwerin [ 29/Mar/18 ]

In addition to the description, we should use the wall clock time field from the oplog entries instead of the "ts" field.

Comment by Gregory McKeon (Inactive) [ 11/Sep/17 ]

Will fix with new rollback in 3.8.

Comment by Eric Milkie [ 08/Sep/17 ]

I would argue there is no point to doing this and that the time limit should simply be removed.
Also there should be no knob for this; how would any end user know what to set the value to, other than the default? How would they know they would need to set it?

Generated at Thu Feb 08 04:25:43 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.