• unknown's avatar
    This code change has 0 effects as it's about the case where innobase_very_fast_shutdown!=0, · 9856fc62
    unknown authored
    which is always false. In a very fast InnoDB shutdown, we just ensure that
    no more transactions are running, flush InnoDB log, signal InnoDB threads to die,
    and then return from InnoDB (from innobase_end()) without waiting for those threads
    to actually die. I have tested on a 4CPU machine that even with --innodb_flush_log_at_trx_commit=0,
    this optimized InnoDB very fast shutdown loses no committed transactions. Patch pre-approved by Heikki.
    
    
    innobase/log/log0log.c:
      In an InnoDB very fast shutdown, we just need to wait for no more transactions to be happening
      and then we can flush the InnoDB log and don't need to wait for the
      signaled-to-die InnoDB threads to finish (saves seconds).
    innobase/srv/srv0start.c:
      In an InnoDB very fast shutdown, once we have forced a flush of the InnoDB
      log to disk, and signalled InnoDB threads to die, we needn't wait
      for these threads to die.
    9856fc62
log0log.c 83.7 KB