mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-30 04:26:45 +03:00 
			
		
		
		
	Transaction aborted on slave should be retries. The OPTION_BEGIN bit was cleared prematurely. Removed dependence of code on value of OPTION_BEGIN bit when executing retries. mysql-test/r/rpl_ndb_basic.result: Result change. mysql-test/t/disabled.def: Enabling test. mysql-test/t/rpl_ndb_basic.test: Changing test to allow checking that slave did not stop. sql/slave.cc: Rolling back transaction before retrying it. Only resetting transaction retries counter on a successful execution or a non-transitional error.
		
			
				
	
	
		
			125 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			125 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| stop slave;
 | |
| drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
 | |
| reset master;
 | |
| reset slave;
 | |
| drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
 | |
| start slave;
 | |
| CREATE TABLE `t1` ( `nid` int(11) NOT NULL default '0',
 | |
| `nom` char(4) default NULL,
 | |
| `prenom` char(4) default NULL,
 | |
| PRIMARY KEY  (`nid`)) 
 | |
| ENGINE=ndbcluster DEFAULT CHARSET=latin1;
 | |
| INSERT INTO t1 VALUES(1,"XYZ1","ABC1");
 | |
| select * from t1 order by nid;
 | |
| nid	nom	prenom
 | |
| 1	XYZ1	ABC1
 | |
| select * from t1 order by nid;
 | |
| nid	nom	prenom
 | |
| 1	XYZ1	ABC1
 | |
| delete from t1;
 | |
| INSERT INTO t1 VALUES(1,"XYZ2","ABC2");
 | |
| select * from t1 order by nid;
 | |
| nid	nom	prenom
 | |
| 1	XYZ2	ABC2
 | |
| select * from t1 order by nid;
 | |
| nid	nom	prenom
 | |
| 1	XYZ2	ABC2
 | |
| DROP table t1;
 | |
| CREATE TABLE `t1` ( `nid` int(11) NOT NULL default '0',
 | |
| `nom` char(4) default NULL,
 | |
| `prenom` char(4) default NULL)
 | |
| ENGINE=ndbcluster DEFAULT CHARSET=latin1;
 | |
| INSERT INTO t1 VALUES(1,"XYZ1","ABC1"),(2,"AAA","BBB"),(3,"CCC","DDD");
 | |
| select * from t1 order by nid;
 | |
| nid	nom	prenom
 | |
| 1	XYZ1	ABC1
 | |
| 2	AAA	BBB
 | |
| 3	CCC	DDD
 | |
| select * from t1 order by nid;
 | |
| nid	nom	prenom
 | |
| 1	XYZ1	ABC1
 | |
| 2	AAA	BBB
 | |
| 3	CCC	DDD
 | |
| delete from t1 where nid = 2;
 | |
| INSERT INTO t1 VALUES(4,"EEE","FFF");
 | |
| select * from t1 order by nid;
 | |
| nid	nom	prenom
 | |
| 1	XYZ1	ABC1
 | |
| 3	CCC	DDD
 | |
| 4	EEE	FFF
 | |
| select * from t1 order by nid;
 | |
| nid	nom	prenom
 | |
| 1	XYZ1	ABC1
 | |
| 3	CCC	DDD
 | |
| 4	EEE	FFF
 | |
| UPDATE t1 set nid=nid+1;
 | |
| UPDATE t1 set nom="CCP" where nid = 4;
 | |
| select * from t1 order by nid;
 | |
| nid	nom	prenom
 | |
| 2	XYZ1	ABC1
 | |
| 4	CCP	DDD
 | |
| 5	EEE	FFF
 | |
| select * from t1 order by nid;
 | |
| nid	nom	prenom
 | |
| 2	XYZ1	ABC1
 | |
| 4	CCP	DDD
 | |
| 5	EEE	FFF
 | |
| DROP table t1;
 | |
| CREATE TABLE `t1` ( `nid` int(11) NOT NULL default '0',
 | |
| `nom` char(4) default NULL,
 | |
| `prenom` char(4) default NULL,
 | |
| PRIMARY KEY USING HASH (`nid`)) 
 | |
| ENGINE=ndbcluster DEFAULT CHARSET=latin1;
 | |
| INSERT INTO t1 VALUES(1,"XYZ1","ABC1");
 | |
| **** On Slave ****
 | |
| BEGIN;
 | |
| UPDATE t1 SET `nom`="LOCK" WHERE `nid`=1;
 | |
| set GLOBAL slave_transaction_retries=1;
 | |
| **** On Master ****
 | |
| UPDATE t1 SET `nom`="DEAD" WHERE `nid`=1;
 | |
| **** On Slave ****
 | |
| SHOW SLAVE STATUS;;
 | |
| Slave_IO_State	<Slave_IO_State>
 | |
| Master_Host	127.0.0.1
 | |
| Master_User	root
 | |
| Master_Port	MASTER_PORT
 | |
| Connect_Retry	1
 | |
| Master_Log_File	master-bin.000001
 | |
| Read_Master_Log_Pos	<Read_Master_Log_Pos>
 | |
| Relay_Log_File	<Relay_Log_File>
 | |
| Relay_Log_Pos	<Relay_Log_Pos>
 | |
| Relay_Master_Log_File	master-bin.000001
 | |
| Slave_IO_Running	Yes
 | |
| Slave_SQL_Running	No
 | |
| Replicate_Do_DB	
 | |
| Replicate_Ignore_DB	
 | |
| Replicate_Do_Table	
 | |
| Replicate_Ignore_Table	<Replicate_Ignore_Table>
 | |
| Replicate_Wild_Do_Table	
 | |
| Replicate_Wild_Ignore_Table	
 | |
| Last_Errno	146
 | |
| Last_Error	Error in Write_rows event: error during transaction execution on table test.t1
 | |
| Skip_Counter	0
 | |
| Exec_Master_Log_Pos	<Exec_Master_Log_Pos>
 | |
| Relay_Log_Space	<Relay_Log_Space>
 | |
| Until_Condition	None
 | |
| Until_Log_File	
 | |
| Until_Log_Pos	0
 | |
| Master_SSL_Allowed	No
 | |
| Master_SSL_CA_File	
 | |
| Master_SSL_CA_Path	
 | |
| Master_SSL_Cert	
 | |
| Master_SSL_Cipher	
 | |
| Master_SSL_Key	
 | |
| Seconds_Behind_Master	<Seconds_Behind_Master>
 | |
| set GLOBAL slave_transaction_retries=10;
 | |
| START SLAVE;
 | |
| select * from t1 order by nid;
 | |
| nid	nom	prenom
 | |
| 1	LOCK	ABC1
 | |
| COMMIT;
 | |
| select * from t1 order by nid;
 | |
| nid	nom	prenom
 | |
| 1	DEAD	ABC1
 | |
| DROP TABLE t1;
 |