Optimization (useful at least for the Maria engine): we disable
logging of insertions made by CREATE SELECT. sql/sql_insert.cc: If error during the CREATE SELECT we drop the table, so no need for engines to do logging of the insertions (optimization). Engines require that disabling is done before locking and re-enabling is done before unlocking; as table creation and locking is done as one function (create_table_from_items()) we disable before calling this function and re-enable before unlocking, in send_eof() (called if success) and abort() (called if error). Question for reviewer: would it be better to do the disabling between creation and locking, so inside create_table_from_items(), given that this function is used only by CREATE SELECT?
Showing
Please register or sign in to comment