[SERVER-11750] Option to Disable Journaling during Initial Sync Created: 17/Nov/13 Updated: 06/Dec/22 Resolved: 01/May/19 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Performance, Replication, Storage |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | David Hows | Assignee: | Backlog - Replication Team |
| Resolution: | Done | Votes: | 0 |
| Labels: | former-quick-wins, initialSync | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Assigned Teams: |
Replication
|
| Participants: |
| Description |
|
Performance of initial sync could be improved if we temporarily disable journaling while performing the non-recoverable stages of the sync. In this case I cannot see a risk of data loss as the recovery mode for these failed initial sync's is simply to restart. |
| Comments |
| Comment by Eric Milkie [ 01/May/19 ] |
|
Judah, you're correct in suspecting this will no longer be a win now that mmapV1 is gone. Since we no longer log data tables, only the oplog, turning off journaling would have little impact but a lot of code complication, so the benefit isn't worth it. |
| Comment by Judah Schvimer [ 30/Apr/19 ] |
|
milkie, is the above comment still true with WT and the current Storage Engine API? |
| Comment by Eric Milkie [ 07/Mar/14 ] |
|
Actually what would happen if a crash occurred during initial sync is that the database files would be corrupt and it wouldn't be possible to restart mongod without manual intervention by the user. It's true that there would be no data loss however. |