[SERVER-22575] Make periodic write flushing a service of the storage system Created: 11/Feb/16  Updated: 06/Dec/22  Resolved: 09/Nov/20

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

Type: Task Priority: Major - P3
Reporter: Scott Hernandez (Inactive) Assignee: Backlog - Storage Execution Team
Resolution: Duplicate Votes: 0
Labels: neweng
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Duplicate
duplicates SERVER-45847 Pull the JournalFlusher out of the st... Closed
Related
related to SERVER-22534 Change ephemeral storage to update du... Closed
related to SERVER-22639 RocksDB storage engine needs to suppo... Closed
Assigned Teams:
Storage Execution
Participants:
Linked BF Score: 0

 Description   

Move the work out of the storage engines and up to the storage system, to drive this functionality across all storage engines.

Periodically the following must happen:

  1. If journaling is on, flush the journal
  2. If not journaling, flush via RecoveryUnit::waitUntilDurable
  3. If waitUntilDurable fails, flushAllFiles

The two periods are journalCommitIntervalMs (30/100 default) and syncDelaySecs (60 default).

In addition, hook-in or replace, the current JournalListener functionality.



 Comments   
Comment by Dianna Hohensee (Inactive) [ 02/Mar/20 ]

Linking as a dupe of SERVER-45847 because the intended fix will resolve this issue. Leaving open until that happens, though.

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