[SERVER-55483] Add a new startup parameter that skips verifying the table log settings Created: 24/Mar/21  Updated: 08/Jan/24  Resolved: 14/Sep/21

Status: Closed
Project: Core Server
Component/s: Storage
Affects Version/s: None
Fix Version/s: 5.0.6, 5.1.0-rc0, 4.2.19, 4.4.13

Type: Improvement Priority: Major - P3
Reporter: Gregory Wlodarek Assignee: Gregory Wlodarek
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Depends
Problem/Incident
Related
is related to SERVER-55766 Introduce an optimized "for restore" ... Closed
Backwards Compatibility: Fully Compatible
Backport Requested:
v5.0, v4.4, v4.2
Sprint: Execution Team 2021-09-20
Participants:
Case:
Linked BF Score: 35

 Description   

For backups, as part of the restore procedure, there's a step that involves starting up a mongod on the data files in standalone mode to remove the previous replica set configuration and to optionally set the oplogTruncateAfterPoint document. Afterwards the standalone is restarted as a replica set node.

This switching of modes has a hidden cost during startup recovery. That is because all tables on standalones are logged and all tables on replicated collections are not logged (excluding the tables belonging to the local database). 

Modifying the table log settings is an expensive operation. WiredTiger performs an fsync after each table is modified.

But because we're in standalone mode for a short period of time as part of the restore procedure, we should investigate if it's possible to skip changing the table log settings. This could speed up restores greatly when there's a large amount of WiredTiger tables present.



 Comments   
Comment by Githook User [ 09/Feb/22 ]

Author:

{'name': 'Gregory Wlodarek', 'email': 'gregory.wlodarek@mongodb.com', 'username': 'GWlodarek'}

Message: SERVER-55483 Add a new startup parameter that skips verifying the table
logging settings

(cherry picked from commit 4fe865b3085ff7a8ccea186076ec0575a3bec197)
Branch: v4.2
https://github.com/mongodb/mongo/commit/dd680775aa8b27f442dd7b72a7b18ad569054646

Comment by Githook User [ 04/Feb/22 ]

Author:

{'name': 'Gregory Wlodarek', 'email': 'gregory.wlodarek@mongodb.com', 'username': 'GWlodarek'}

Message: SERVER-55483 Add a new startup parameter that skips verifying the table
logging settings

(cherry picked from commit 9cbf52051d506a029546c1e7e28a5f77afd8bd46)
(cherry picked from commit 4fe865b3085ff7a8ccea186076ec0575a3bec197)
Branch: v4.4
https://github.com/mongodb/mongo/commit/f304f262128f49d937034cf4eb4550a0a4fa596a

Comment by Githook User [ 13/Dec/21 ]

Author:

{'name': 'Gregory Wlodarek', 'email': 'gregory.wlodarek@mongodb.com', 'username': 'GWlodarek'}

Message: SERVER-55483 Add a new startup parameter that skips verifying the table
logging settings

(cherry picked from commit 9cbf52051d506a029546c1e7e28a5f77afd8bd46)
Branch: v5.0
https://github.com/mongodb/mongo/commit/4fe865b3085ff7a8ccea186076ec0575a3bec197

Comment by Louis Williams [ 28/Oct/21 ]

luc.buttigieg@neotys.com I have requested the backports, but we will have to determine whether or not we think they are safe.

Comment by Luc Buttigieg [ 28/Oct/21 ]

Any chance to have a backport of this fix in 4.2.x please ? This ticket has been reported on our behalf by Cloud Atlas Support Team. Many Thanks.

Comment by Githook User [ 14/Sep/21 ]

Author:

{'name': 'Gregory Wlodarek', 'email': 'gregory.wlodarek@mongodb.com', 'username': 'GWlodarek'}

Message: SERVER-55483 Add a new startup parameter that skips verifying the tab…
Branch: master
https://github.com/mongodb/mongo/commit/9cbf52051d506a029546c1e7e28a5f77afd8bd46

Comment by Louis Williams [ 22/Apr/21 ]

This seems related to SERVER-55766. I wonder if we could build on the proposed "for restore" server parameter.

Generated at Thu Feb 08 05:36:36 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.