• Kristofer Pettersson's avatar
    Bug#34895 'show procedure status' or 'show function status' + · df2122a2
    Kristofer Pettersson authored
              'flush tables' crashes
    
    The server crashes when 'show procedure status' and 'flush tables' are
    run concurrently.
    
    This is caused by the way mysql.proc table is added twice to the list
    of table to lock although the requirements on the current locking API
    assumes differently.
    
    No test case is submitted because of the nature of the crash which is 
    currently difficult to reproduce in a deterministic way.
    
    This is a backport from 5.1
    
    myisam/mi_dbug.c:
      * check_table_is_closed is only used in EXTRA_DEBUG mode but since it is
      iterating over myisam shared data it still needs to be protected by an
      appropriate mutex.
    sql/sql_yacc.yy:
      * Since the I_S mechanism is already handling the open and close of 
      mysql.proc there is no need for the method sp_add_to_query_tables.
    df2122a2
sql_yacc.yy 296 KB