mirror of
https://github.com/MariaDB/server.git
synced 2025-02-01 03:21:53 +01:00
ac6026ce27
temp table This patch introduces two key changes in the replication's behavior. Firstly, it reverts part of BUG#51894 which puts any update to temporary tables into the trx-cache. Now, updates to temporary tables are handled according to the type of their engines as a regular table. Secondly, an unsafe mixed statement, (i.e. a statement that access transactional table as well non-transactional or temporary table, and writes to any of them), are written into the trx-cache in order to minimize errors in the execution when the statement logging format is in use. Such changes has a direct impact on which statements are classified as unsafe statements and thus part of BUG#53259 is reverted.
49 lines
2.3 KiB
Text
49 lines
2.3 KiB
Text
set binlog_format=mixed;
|
|
RESET MASTER;
|
|
select count(*) > 0 from performance_schema.SETUP_INSTRUMENTS;
|
|
count(*) > 0
|
|
1
|
|
update performance_schema.SETUP_INSTRUMENTS set enabled='NO'
|
|
where name like "wait/synch/rwlock/%";
|
|
select count(*) > 0 from performance_schema.EVENTS_WAITS_CURRENT;
|
|
count(*) > 0
|
|
1
|
|
drop table if exists test.t1;
|
|
drop table if exists test.t2;
|
|
create table test.t1 (thread_id integer);
|
|
create table test.t2 (name varchar(128));
|
|
insert into test.t1
|
|
select thread_id from performance_schema.EVENTS_WAITS_CURRENT;
|
|
insert into test.t2
|
|
select name from performance_schema.SETUP_INSTRUMENTS
|
|
where name like "wait/synch/rwlock/%";
|
|
drop table test.t1;
|
|
drop table test.t2;
|
|
update performance_schema.SETUP_INSTRUMENTS set enabled='YES'
|
|
where name like "wait/synch/rwlock/%";
|
|
show binlog events from <binlog_start>;
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Query # # BEGIN
|
|
master-bin.000001 # Table_map # # table_id: # (performance_schema.SETUP_INSTRUMENTS)
|
|
master-bin.000001 # Update_rows # # table_id: #
|
|
master-bin.000001 # Update_rows # # table_id: # flags: STMT_END_F
|
|
master-bin.000001 # Query # # COMMIT
|
|
master-bin.000001 # Query # # use `test`; DROP TABLE IF EXISTS `t1` /* generated by server */
|
|
master-bin.000001 # Query # # use `test`; DROP TABLE IF EXISTS `t2` /* generated by server */
|
|
master-bin.000001 # Query # # use `test`; create table test.t1 (thread_id integer)
|
|
master-bin.000001 # Query # # use `test`; create table test.t2 (name varchar(128))
|
|
master-bin.000001 # Query # # BEGIN
|
|
master-bin.000001 # Table_map # # table_id: # (test.t1)
|
|
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
|
master-bin.000001 # Query # # COMMIT
|
|
master-bin.000001 # Query # # BEGIN
|
|
master-bin.000001 # Table_map # # table_id: # (test.t2)
|
|
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
|
master-bin.000001 # Query # # COMMIT
|
|
master-bin.000001 # Query # # use `test`; DROP TABLE `t1` /* generated by server */
|
|
master-bin.000001 # Query # # use `test`; DROP TABLE `t2` /* generated by server */
|
|
master-bin.000001 # Query # # BEGIN
|
|
master-bin.000001 # Table_map # # table_id: # (performance_schema.SETUP_INSTRUMENTS)
|
|
master-bin.000001 # Update_rows # # table_id: #
|
|
master-bin.000001 # Update_rows # # table_id: # flags: STMT_END_F
|
|
master-bin.000001 # Query # # COMMIT
|