Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-13344

Pad journal writes to 4k not 8k

    XMLWordPrintableJSON

Details

    • Icon: Improvement Improvement
    • Resolution: Won't Fix
    • Icon: Minor - P4 Minor - P4
    • None
    • None
    • MMAPv1, Storage
    • Storage Execution

    Description

      Journal writes are padded to 8kb, see the use of Alignment in Journal::journal and "namespace dur { const unsigned Alignment = 8192;"

      With buffered IO the minimum transfer size is 4kb on Linux so padding to 8kb means that twice as much can be written to the journal in the worst case for workloads with j:1.

      This can hurt performance and also generate more wear on flash devices.

      Note that MongoDB already can write a lot more to disk for write-heavy workloads compared to its peers – http://smalldatum.blogspot.com/2014/03/redo-logs-in-mongodb-and-innodb.html

      This might help with SERVER-9802

      Attachments

        Activity

          People

            backlog-server-execution Backlog - Storage Execution Team
            mdcallag Mark Callaghan
            Votes:
            1 Vote for this issue
            Watchers:
            10 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: