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

journal rotates while dbMutex is held

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • 3.0.0-rc6
    • Affects Version/s: 2.1.0
    • Component/s: Performance, Storage
    • Labels:
      None
    • Fully Compatible
    • ALL

      from SERVER-4880..
      log message is:

      Mon Feb 06 10:47:57 [journal] info journal _rotate called insider dbMutex - ok but should be somewhat rare
      

      dwight says:

      not sure why it is being called so much inside the lock. rotating in the lock would be a little bad as the world would be stopped while we unlink a 2GB file which might take a little time. but it's a rare event.
      
      the logging is happening before the if statement that checks if we are due to rotate - it's good it's before the rotate as rotates are so rare we'd never notice it otherwise.
      
      so we should analyze and see what is up but severity is not high
      

      This may have caused a couple recent unit test breaks, in particular if it happens to occur while we are in an assert.soon(), since the default is that it only waits 30 seconds and the journal rotating can take a while as Dwight mentions above.

            Assignee:
            kaloian.manassiev@mongodb.com Kaloian Manassiev
            Reporter:
            milkie@mongodb.com Eric Milkie
            Votes:
            1 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: