29 lines
		
	
	
		
			958 B
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			958 B
		
	
	
	
		
			Plaintext
		
	
	
	
| drop function if exists bug23333|
 | |
| drop table if exists t1,t2|
 | |
| CREATE TABLE t1 (a int  NOT NULL auto_increment primary key) ENGINE=MyISAM|
 | |
| CREATE TABLE t2 (a int  NOT NULL auto_increment, b int, PRIMARY KEY (a)) ENGINE=InnoDB|
 | |
| insert into t2 values (1,1)|
 | |
| create function bug23333() 
 | |
| RETURNS int(11)
 | |
| DETERMINISTIC
 | |
| begin
 | |
| insert into t1 values (null);
 | |
| select count(*) from t1 into @a;
 | |
| return @a;
 | |
| end|
 | |
| reset master|
 | |
| insert into t2 values (bug23333(),1)|
 | |
| ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
 | |
| 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: # (test.t2)
 | |
| master-bin.000001	#	Table_map	#	#	table_id: # (test.t1)
 | |
| master-bin.000001	#	Write_rows	#	#	table_id: # flags: STMT_END_F
 | |
| master-bin.000001	#	Query	#	#	ROLLBACK
 | |
| select count(*),@a from t1 /* must be 1,1 */|
 | |
| count(*)	@a
 | |
| 1	1
 | |
| drop table t1,t2;
 | |
| drop function if exists bug23333;
 |