• Jan Lindström's avatar
    MDEV-7424: InnoDB: Assertion failure in thread 139901753345792 · fe0112e2
    Jan Lindström authored
      in file buf0mtflu.cc line 439
    
      Analysis: At shutdown multi-threaded flush sends a exit work
      items to all mtflush threads. We wait until the work queue is
      empty. However, as we did not hold the mutex, some other thread
      could also put work-items to work queue.
    
      Fix: Take mutex before adding exit work items to work queue and
      wait until all work-items are really processed. Release
      mutex after we have marked that multi-threaded flush is not
      anymore active.
    
      Fix test failure on innodb_bug12902967 caused by unnecessary
      info output on xtradb/buf/buf0mtflush.cc.
    
       Do not try to enable atomic writes if the file type
       is not OS_DATA_FILE. Atomic writes are unnecessary
       for log files. If we try to enable atomic writes
       to log writes that are stored to media supporting
       atomic writes we will end up problems later.
    fe0112e2
buf0mtflu.cc 21.9 KB