Single writes with journal=true are penalized by journalCommitInterval

XMLWordPrintableJSON

    • Type: Improvement
    • Resolution: Done
    • Priority: Major - P3
    • None
    • Affects Version/s: 2.4.3
    • Component/s: Performance, Write Ops
    • None
    • Environment:
      Windows 7 Professional SP1 x64
    • Storage Execution
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      These lines are from durThread method in dur.cpp:

      // commit sooner if one or more getLastError j:true is pending
      sleepmillis(oneThird);
      for( unsigned i = 1; i <= 2; i++ ) {
      if( commitJob._notify.nWaiting() )
      break;

      As oneThird can't be less than 1 ms, every single write with j=true is penalized by that time. Should we move this check before sleepmillis?

      if( !commitJob._notify.nWaiting() ) {
      sleepmillis(oneThird);
      for( unsigned i = 1; i <= 2; i++ ) {

            Assignee:
            [DO NOT USE] Backlog - Storage Execution Team
            Reporter:
            Dmitry Naumov
            Votes:
            0 Vote for this issue
            Watchers:
            9 Start watching this issue

              Created:
              Updated:
              Resolved: