47 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			47 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| 
								 | 
							
								# binlog disabled in embedded server
							 | 
						||
| 
								 | 
							
								-- source include/not_embedded.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# part of sp_trans test that appeared to be sensitive to binlog format
							 | 
						||
| 
								 | 
							
								--source include/have_innodb.inc
							 | 
						||
| 
								 | 
							
								--source include/have_binlog_format_mixed_or_row.inc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								delimiter |;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# Bug#13270 INSERT,UPDATE,etc that calls func with side-effect does not binlog
							 | 
						||
| 
								 | 
							
								# Bug#23333 stored function + non-transac table + transac table =
							 | 
						||
| 
								 | 
							
								#           breaks stmt-based binlog
							 | 
						||
| 
								 | 
							
								# Bug#27395 OPTION_STATUS_NO_TRANS_UPDATE is not preserved at the end of SF()
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								--disable_warnings
							 | 
						||
| 
								 | 
							
								drop function if exists bug23333|
							 | 
						||
| 
								 | 
							
								drop table if exists t1,t2|
							 | 
						||
| 
								 | 
							
								--enable_warnings
							 | 
						||
| 
								 | 
							
								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|
							 | 
						||
| 
								 | 
							
								--error ER_DUP_ENTRY
							 | 
						||
| 
								 | 
							
								insert into t2 values (bug23333(),1)| 
							 | 
						||
| 
								 | 
							
								# with fixes for 23333 will show there is the query */|
							 | 
						||
| 
								 | 
							
								--source include/show_binlog_events.inc
							 | 
						||
| 
								 | 
							
								select count(*),@a from t1 /* must be 1,1 */|
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								delimiter ;|
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# clean-up
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								drop table t1,t2;
							 | 
						||
| 
								 | 
							
								drop function if exists bug23333;
							 |