• Davi Arnaut's avatar
    Bug#43587: Putting event_scheduler=1 in init SQL file crashes · 8ec2f3d0
    Davi Arnaut authored
    mysqld
    
    The problem was that enabling the event scheduler inside a init
    file caused the server to crash upon start-up. The crash occurred
    because the event scheduler wasn't being initialized before the
    commands in the init-file are processed.
    
    The solution is to initialize the event scheduler before the init
    file is read. The patch also disables the event scheduler during
    bootstrap and makes the bootstrap operation robust in the
    presence of background threads.
    
    mysql-test/std_data/init_file.dat:
      Add test case for Bug#43587
    sql/event_scheduler.cc:
      Signal that the thread_count has been decremented.
    sql/events.cc:
      Disable the event scheduler during bootstrap.
    sql/mysql_priv.h:
      Export variable.
    sql/mysqld.cc:
      Initialize the event scheduler before commands are executed.
    sql/sql_parse.cc:
      Signal that the bootstrap thread is done.
    8ec2f3d0
init_file.dat 1.28 KB