• unknown's avatar
    now all tables of query are locked in one place (including derived tables) · 68c0a299
    unknown authored
    fixed BUG#2120 and other problem with EXPLAINing derived tables
    
    
    mysql-test/r/derived.result:
      correct tables names & Co in derived tables
      test case for BUG#2120
    mysql-test/t/derived.test:
      test case for BUG#2120
    sql/mysql_priv.h:
      derived tables processing moved after open/locking all tables (in open_and_lock_tables)
    sql/repl_failsafe.cc:
      correct initialization of TABLE_LIST
    sql/sql_acl.cc:
      used simple table opening without derived table processing to avoid unneeded initialization of SELECT_LEX
    sql/sql_base.cc:
      derived tables processing moved after open/locking all tables (in open_and_lock_tables)
    sql/sql_delete.cc:
      all tables processing is done during opening
    sql/sql_derived.cc:
      derived tables processing moved after open/locking all tables (in open_and_lock_tables) to sutisfy "all query tables locking" at the moment
    sql/sql_insert.cc:
      all tables processing is done during opening
      correct initialization of TABLE_LIST
    sql/sql_lex.cc:
      now table list will be created for whole query
      layout fix
      correct check of updated table in subqueries
    sql/sql_lex.h:
      now table list will be created for whole query
      correct check of updated table in subqueries
    sql/sql_olap.cc:
      THIS FUNCTION IS USED NOWHERE
      it will be good to remove it at all (handle_olaps)
    sql/sql_parse.cc:
      derived tables processing moved after open/locking all tables (in open_and_lock_tables)
    sql/sql_prepare.cc:
      new creating list parameters
      all tables processing is done during opening
    sql/sql_select.cc:
      all tables processing is done during opening
    sql/sql_select.h:
      now it used only within file where is defined
    sql/sql_udf.cc:
      used simple table opening without derived table processing to avoid unneeded initialization of SELECT_LEX
    sql/sql_update.cc:
      all tables processing is done during opening
    68c0a299
sql_lex.h 20.3 KB