1. 25 Sep, 2015 2 commits
    • Nirbhay Choubey's avatar
      4d33f9dc
    • Nirbhay Choubey's avatar
      MDEV-8208: Sporadic SEGFAULT on startup · 13615c5e
      Nirbhay Choubey authored
      Addendum:
      * Before calling THD::init_for_queries(), flip the current_thd to wsrep
      thread so that memory gets allocated for the right THD.
      * Use wsrep_creating_startup_threads instead of plugins_are_initialized
      as the condition for the execution of THD::init_for_queries() within
      start_wsrep_THD(), as use of latter could still leave some room for
      race.
      13615c5e
  2. 22 Sep, 2015 2 commits
  3. 17 Sep, 2015 1 commit
    • Nirbhay Choubey's avatar
      MDEV-8208: Sporadic SEGFAULT on startup · db2e21bf
      Nirbhay Choubey authored
      Problem:
      When mysqld starts as a galera node, it creates 2 system threads
      (applier & rollbacker) using start_wsrep_THD(). These threads are
      created before plugin initialization (plugin_init()) for SST methods
      like rsync and xtrabackup.
      
      The threads' initialization itself can proceed in parallel to mysqld's
      main thread of execution. As a result, the thread initialization code
      (start_wsrep_THD()) can end up accessing some un/partially initialized
      structures (like maria_hton, in this particular case) resulting in
      segfault.
      
      Solution:
      Fixed by calling THD::init_for_queries() (which accesses maria_hton)
      only after the plugins have been initialized.
      db2e21bf
  4. 15 Sep, 2015 2 commits
  5. 14 Sep, 2015 2 commits
  6. 10 Sep, 2015 31 commits