mirror of
https://github.com/MariaDB/server.git
synced 2025-08-07 00:04:31 +03:00
Revert MDEV-25292 Atomic CREATE OR REPLACE TABLE
Specifically: Revert "MDEV-29664 Assertion `!n_mysql_tables_in_use' failed in innobase_close_connection" This reverts commitba875e9396
. Revert "MDEV-29620 Assertion `next_insert_id == 0' failed in handler::ha_external_lock" This reverts commitaa08a7442a
. Revert "MDEV-29628 Memory leak after CREATE OR REPLACE with foreign key" This reverts commitc579d66ba6
. Revert "MDEV-29609 create_not_windows test fails with different result" This reverts commitcb583b2f1b
. Revert "MDEV-29544 SIGSEGV in HA_CREATE_INFO::finalize_locked_tables" This reverts commitdcd66c3814
. Revert "MDEV-28933 CREATE OR REPLACE fails to recreate same constraint name" This reverts commitcf6c517632
. Revert "MDEV-28933 Moved RENAME_CONSTRAINT_IDS to include/sql_funcs.h" This reverts commitf1e1c1335b
. Revert "MDEV-28956 Locking is broken if CREATE OR REPLACE fails under LOCK TABLES" This reverts commita228ec80e3
. Revert "MDEV-25292 gcol.gcol_bugfixes --ps fix" This reverts commit24fff8267d
. Revert "MDEV-25292 Disable atomic replace for slave-generated or-replace" This reverts commit2af15914cb
. Revert "MDEV-25292 backup_log improved" This reverts commit34398a20b5
. Revert "MDEV-25292 Atomic CREATE OR REPLACE TABLE" This reverts commit93c8252f02
. Revert "MDEV-25292 Table_name class for (db, table_name, alias)" This reverts commitd145dda9c7
. Revert "MDEV-25292 ha_table_exists() cleanup and improvement" This reverts commit409b8a86de
. Revert "MDEV-25292 Cleanups" This reverts commit595dad83ad
. Revert "MDEV-25292 Refactoring: moved select_field_count into Alter_info." This reverts commitf02af1d229
.
This commit is contained in:
@@ -2931,7 +2931,7 @@ public:
|
||||
bool prepare_handlers_for_update(uint flag);
|
||||
bool binlog_write_annotated_row(Log_event_writer *writer);
|
||||
void binlog_prepare_for_row_logging();
|
||||
bool binlog_write_table_maps(TABLE *cur_table);
|
||||
bool binlog_write_table_maps();
|
||||
bool binlog_write_table_map(TABLE *table, bool with_annotate);
|
||||
static void binlog_prepare_row_images(TABLE* table);
|
||||
|
||||
@@ -6140,11 +6140,6 @@ class select_insert :public select_result_interceptor {
|
||||
ulonglong autoinc_value_of_last_inserted_row; // autogenerated or not
|
||||
COPY_INFO info;
|
||||
bool insert_into_view;
|
||||
bool binary_logged; // true if query was binlogged
|
||||
bool atomic_replace; // true for atomic create or replace
|
||||
bool tmp_table;
|
||||
Table_specification_st *create_info;
|
||||
|
||||
select_insert(THD *thd_arg, TABLE_LIST *table_list_par, TABLE *table_par,
|
||||
List<Item> *fields_par, List<Item> *update_fields,
|
||||
List<Item> *update_values, enum_duplicates duplic,
|
||||
@@ -6156,7 +6151,6 @@ class select_insert :public select_result_interceptor {
|
||||
virtual void store_values(List<Item> &values);
|
||||
virtual bool can_rollback_data() { return 0; }
|
||||
bool prepare_eof();
|
||||
bool binlog_query();
|
||||
bool send_ok_packet();
|
||||
bool send_eof();
|
||||
virtual void abort_result_set();
|
||||
@@ -6166,7 +6160,7 @@ class select_insert :public select_result_interceptor {
|
||||
|
||||
|
||||
class select_create: public select_insert {
|
||||
TABLE_LIST *orig_table;
|
||||
Table_specification_st *create_info;
|
||||
TABLE_LIST *select_tables;
|
||||
Alter_info *alter_info;
|
||||
Field **field;
|
||||
@@ -6183,7 +6177,19 @@ public:
|
||||
Table_specification_st *create_info_par,
|
||||
Alter_info *alter_info_arg,
|
||||
List<Item> &select_fields,enum_duplicates duplic, bool ignore,
|
||||
TABLE_LIST *select_tables_arg);
|
||||
TABLE_LIST *select_tables_arg):
|
||||
select_insert(thd_arg, table_arg, NULL, &select_fields, 0, 0, duplic,
|
||||
ignore, NULL),
|
||||
create_info(create_info_par),
|
||||
select_tables(select_tables_arg),
|
||||
alter_info(alter_info_arg),
|
||||
m_plock(NULL), exit_done(0),
|
||||
saved_tmp_table_share(0)
|
||||
{
|
||||
DBUG_ASSERT(create_info->default_table_charset);
|
||||
bzero(&ddl_log_state_create, sizeof(ddl_log_state_create));
|
||||
bzero(&ddl_log_state_rm, sizeof(ddl_log_state_rm));
|
||||
}
|
||||
int prepare(List<Item> &list, SELECT_LEX_UNIT *u);
|
||||
|
||||
void store_values(List<Item> &values);
|
||||
|
Reference in New Issue
Block a user