mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-30 04:26:45 +03:00 
			
		
		
		
	 a95571875c
			
		
	
	a95571875c
	
	
	
		
			
			no rows of the blackhold engine (for this engine to be a binlog propagator). NOTE: blackhole.test currently hangs in 5.0 BUG#10175 so I'll merge without running this test; the person who fixes the hang will correct the merged blackhole.result or ask me to).
		
			
				
	
	
		
			128 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			128 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| #
 | |
| # Simple test for blackhole example
 | |
| # Taken from the select test
 | |
| #
 | |
| -- source include/have_blackhole.inc
 | |
| 
 | |
| --disable_warnings
 | |
| drop table if exists t1,t2;
 | |
| --enable_warnings
 | |
| 
 | |
| CREATE TABLE t1 (
 | |
|   Period smallint(4) unsigned zerofill DEFAULT '0000' NOT NULL,
 | |
|   Varor_period smallint(4) unsigned DEFAULT '0' NOT NULL
 | |
| ) ENGINE=blackhole;
 | |
| 
 | |
| INSERT INTO t1 VALUES (9410,9412);
 | |
|   
 | |
| select period from t1;
 | |
| select * from t1;
 | |
| select t1.* from t1;
 | |
| 
 | |
| #
 | |
| # Create test table
 | |
| #
 | |
| 
 | |
| CREATE TABLE t2 (
 | |
|   auto int NOT NULL auto_increment,
 | |
|   fld1 int(6) unsigned zerofill DEFAULT '000000' NOT NULL,
 | |
|   companynr tinyint(2) unsigned zerofill DEFAULT '00' NOT NULL,
 | |
|   fld3 char(30) DEFAULT '' NOT NULL,
 | |
|   fld4 char(35) DEFAULT '' NOT NULL,
 | |
|   fld5 char(35) DEFAULT '' NOT NULL,
 | |
|   fld6 char(4) DEFAULT '' NOT NULL,
 | |
|   primary key (auto)
 | |
| ) ENGINE=blackhole;  
 | |
| 
 | |
| INSERT INTO t2 VALUES (1192,068305,00,'Colombo','hardware','colicky','');
 | |
| INSERT INTO t2 VALUES (1193,000000,00,'nondecreasing','implant','thrillingly','');
 | |
| --enable_query_log
 | |
| 
 | |
| #
 | |
| # Search with a key
 | |
| #
 | |
| 
 | |
| select t2.fld3 from t2 where companynr = 58 and fld3 like "%imaginable%";
 | |
| select fld3 from t2 where fld3 like "%cultivation" ;
 | |
| 
 | |
| #
 | |
| # Search with a key using sorting and limit the same time
 | |
| #
 | |
| 
 | |
| select t2.fld3,companynr from t2 where companynr = 57+1 order by fld3;
 | |
| select fld3,companynr from t2 where companynr = 58 order by fld3;
 | |
| 
 | |
| select fld3 from t2 order by fld3 desc limit 10;
 | |
| select fld3 from t2 order by fld3 desc limit 5;
 | |
| select fld3 from t2 order by fld3 desc limit 5,5;
 | |
| 
 | |
| #
 | |
| # Search with a key having a constant with each unique key.
 | |
| # The table is read directly with read-next on fld3
 | |
| #
 | |
| 
 | |
| select t2.fld3 from t2 where fld3 = 'honeysuckle';
 | |
| select t2.fld3 from t2 where fld3 LIKE 'honeysuckl_';
 | |
| select t2.fld3 from t2 where fld3 LIKE 'hon_ysuckl_';
 | |
| select t2.fld3 from t2 where fld3 LIKE 'honeysuckle%';
 | |
| select t2.fld3 from t2 where fld3 LIKE 'h%le';
 | |
| 
 | |
| select t2.fld3 from t2 where fld3 LIKE 'honeysuckle_';
 | |
| select t2.fld3 from t2 where fld3 LIKE 'don_t_find_me_please%';
 | |
| 
 | |
| #
 | |
| # Test sorting with a used key (there is no need for sorting)
 | |
| #
 | |
| 
 | |
| select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
 | |
| select fld1,fld3 from t2 where fld3="Colombo" or fld3 = "nondecreasing" order by fld3;
 | |
| 
 | |
| 
 | |
| # Test for fulltext
 | |
| DROP TABLE t1;
 | |
| CREATE TABLE t1 (a VARCHAR(200), b TEXT, FULLTEXT (a,b));
 | |
| INSERT INTO t1 VALUES('MySQL has now support', 'for full-text search'),
 | |
|                        ('Full-text indexes', 'are called collections'),
 | |
|                           ('Only MyISAM tables','support collections'),
 | |
|              ('Function MATCH ... AGAINST()','is used to do a search'),
 | |
|         ('Full-text search in MySQL', 'implements vector space model');
 | |
| SHOW INDEX FROM t1;
 | |
| 
 | |
| # nl search
 | |
| 
 | |
| select * from t1 where MATCH(a,b) AGAINST ("collections");
 | |
| explain extended select * from t1 where MATCH(a,b) AGAINST ("collections");
 | |
| select * from t1 where MATCH(a,b) AGAINST ("indexes");
 | |
| select * from t1 where MATCH(a,b) AGAINST ("indexes collections");
 | |
| select * from t1 where MATCH(a,b) AGAINST ("only");
 | |
| 
 | |
| # Test that every DML (except SELECT) and DDL gets into binlog
 | |
| # so that blackhole can be used as "binlog propagator"
 | |
| 
 | |
| reset master;
 | |
| drop table t1,t2;
 | |
| create table t1 (a int) engine=blackhole;
 | |
| delete from t1 where a=10;
 | |
| update t1 set a=11 where a=15;
 | |
| insert into t1 values(1);
 | |
| insert ignore into t1 values(1);
 | |
| replace into t1 values(100);
 | |
| create table t2 (a varchar(200)) engine=blackhole;
 | |
| load data infile '../../std_data/words.dat' into table t2;
 | |
| alter table t1 add b int;
 | |
| alter table t1 drop b;
 | |
| create table t3 like t1;
 | |
| insert into t1 select * from t3;
 | |
| replace into t1 select * from t3;
 | |
| # Just to verify
 | |
| select * from t1;
 | |
| select * from t2;
 | |
| select * from t3;
 | |
| 
 | |
| let $VERSION=`select version()`;
 | |
| --replace_result $VERSION VERSION
 | |
| --replace_column 2 # 5 #
 | |
| show binlog events;
 | |
| 
 | |
| drop table t1,t2,t3;
 |