mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 19:06:14 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			63 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			63 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| --source include/big_test.inc
 | |
| --source include/galera_cluster.inc
 | |
| --source include/have_innodb.inc
 | |
| 
 | |
| #
 | |
| # InnoDB FULLTEXT indexes
 | |
| #
 | |
| 
 | |
| SET SESSION wsrep_trx_fragment_size = 1;
 | |
| CREATE TABLE ten (f1 INTEGER) ENGINE=InnoDB;
 | |
| INSERT INTO ten VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
 | |
| 
 | |
| #
 | |
| # Fulltext index creation causes the creation of multiple system tables
 | |
| #
 | |
| 
 | |
| --connection node_1
 | |
| CREATE TABLE t1 (f1 INT PRIMARY KEY AUTO_INCREMENT, f2 VARCHAR(100), FULLTEXT (f2)) ENGINE=InnoDB;
 | |
| 
 | |
| --connection node_2
 | |
| SELECT COUNT(*) = 13 FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES WHERE name LIKE 'test/%';
 | |
| 
 | |
| #
 | |
| # Fulltext insertion causes a flurry of updates on those system tables
 | |
| #
 | |
| 
 | |
| --connection node_1
 | |
| # Insert 10K rows
 | |
| INSERT INTO t1 (f2) SELECT 'foobarbaz' FROM ten AS a1, ten AS a2, ten AS a3, ten AS a4;
 | |
| 
 | |
| --connection node_2
 | |
| SELECT COUNT(f2) = 10000 FROM t1 WHERE MATCH(f2) AGAINST ('foobarbaz');
 | |
| 
 | |
| UPDATE t1 SET f2 = 'abcdefjhk';
 | |
| 
 | |
| --connection node_1
 | |
| SELECT COUNT(f2) = 10000 FROM t1 WHERE MATCH(f2) AGAINST ('abcdefjhk');
 | |
| 
 | |
| --connection node_2
 | |
| 
 | |
| DROP TABLE t1;
 | |
| 
 | |
| #
 | |
| # Same on a table with no PK
 | |
| #
 | |
| 
 | |
| --connection node_1
 | |
| CREATE TABLE t1 (f1 VARCHAR(100), FULLTEXT (f1)) ENGINE=InnoDB;
 | |
| 
 | |
| --connection node_2
 | |
| # We insert only 1K rows here, because updates without a PK are very slow
 | |
| INSERT INTO t1 (f1) SELECT 'foobarbaz' FROM ten AS a1, ten AS a2, ten AS a3;
 | |
| 
 | |
| --connection node_1
 | |
| SELECT COUNT(f1) = 1000 FROM t1 WHERE MATCH(f1) AGAINST ('foobarbaz');
 | |
| 
 | |
| UPDATE t1 SET f1 = 'abcdefjhk';
 | |
| 
 | |
| --connection node_2
 | |
| SELECT COUNT(f1) = 1000 FROM t1 WHERE MATCH(f1) AGAINST ('abcdefjhk');
 | |
| 
 | |
| DROP TABLE t1;
 | |
| DROP TABLE ten;
 | 
