mirror of
				https://github.com/MariaDB/server.git
				synced 2025-11-03 14:33:32 +03:00 
			
		
		
		
	information_schema. Added .opt file to enable running this test as a part of innodb_zip suite and recorded current correct results.
		
			
				
	
	
		
			100 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			100 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
SET GLOBAL innodb_cmp_per_index_enabled=ON;
 | 
						|
SELECT * FROM information_schema.innodb_cmp_per_index;
 | 
						|
CREATE TABLE t (
 | 
						|
a INT,
 | 
						|
b VARCHAR(512),
 | 
						|
c VARCHAR(16),
 | 
						|
PRIMARY KEY (a),
 | 
						|
INDEX (b(512)),
 | 
						|
INDEX (c(16))
 | 
						|
) ENGINE=INNODB KEY_BLOCK_SIZE=2;
 | 
						|
SELECT
 | 
						|
database_name,
 | 
						|
table_name,
 | 
						|
index_name,
 | 
						|
compress_ops,
 | 
						|
compress_ops_ok,
 | 
						|
uncompress_ops
 | 
						|
FROM information_schema.innodb_cmp_per_index
 | 
						|
ORDER BY 1, 2, 3;
 | 
						|
database_name	test
 | 
						|
table_name	t
 | 
						|
index_name	b
 | 
						|
compress_ops	1
 | 
						|
compress_ops_ok	1
 | 
						|
uncompress_ops	0
 | 
						|
database_name	test
 | 
						|
table_name	t
 | 
						|
index_name	c
 | 
						|
compress_ops	1
 | 
						|
compress_ops_ok	1
 | 
						|
uncompress_ops	0
 | 
						|
database_name	test
 | 
						|
table_name	t
 | 
						|
index_name	PRIMARY
 | 
						|
compress_ops	1
 | 
						|
compress_ops_ok	1
 | 
						|
uncompress_ops	0
 | 
						|
BEGIN;
 | 
						|
COMMIT;
 | 
						|
ALTER TABLE t DROP INDEX c;
 | 
						|
GRANT USAGE ON *.* TO 'tuser01'@'localhost' IDENTIFIED BY 'cDJvI9s_Uq';
 | 
						|
FLUSH PRIVILEGES;
 | 
						|
connect  con1,localhost,tuser01,cDJvI9s_Uq,;
 | 
						|
connection con1;
 | 
						|
SELECT * FROM information_schema.innodb_cmp_per_index;
 | 
						|
ERROR 42000: Access denied; you need (at least one of) the PROCESS privilege(s) for this operation
 | 
						|
connection default;
 | 
						|
disconnect con1;
 | 
						|
DROP USER 'tuser01'@'localhost';
 | 
						|
SELECT
 | 
						|
database_name,
 | 
						|
table_name,
 | 
						|
index_name,
 | 
						|
CASE WHEN compress_ops=47 and @@innodb_compression_level IN (4,8,9) THEN 65
 | 
						|
ELSE compress_ops END as compress_ops,
 | 
						|
CASE WHEN compress_ops_ok=47 and @@innodb_compression_level IN (4,8,9) THEN 65
 | 
						|
ELSE compress_ops_ok END as compress_ops_ok,
 | 
						|
uncompress_ops
 | 
						|
FROM information_schema.innodb_cmp_per_index
 | 
						|
ORDER BY 1, 2, 3;
 | 
						|
database_name	test
 | 
						|
table_name	t
 | 
						|
index_name	b
 | 
						|
compress_ops	43
 | 
						|
compress_ops_ok	43
 | 
						|
uncompress_ops	0
 | 
						|
database_name	test
 | 
						|
table_name	t
 | 
						|
index_name	PRIMARY
 | 
						|
compress_ops	65
 | 
						|
compress_ops_ok	65
 | 
						|
uncompress_ops	0
 | 
						|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
 | 
						|
SELECT COUNT(*) FROM t;
 | 
						|
COUNT(*)	128
 | 
						|
SELECT
 | 
						|
database_name,
 | 
						|
table_name,
 | 
						|
index_name,
 | 
						|
compress_ops,
 | 
						|
compress_ops_ok,
 | 
						|
CASE WHEN uncompress_ops=6 and @@innodb_compression_level IN (4,8,9) THEN 9
 | 
						|
ELSE uncompress_ops END as uncompress_ops
 | 
						|
FROM information_schema.innodb_cmp_per_index
 | 
						|
ORDER BY 1, 2, 3;
 | 
						|
database_name	test
 | 
						|
table_name	t
 | 
						|
index_name	b
 | 
						|
compress_ops	0
 | 
						|
compress_ops_ok	0
 | 
						|
uncompress_ops	6
 | 
						|
database_name	test
 | 
						|
table_name	t
 | 
						|
index_name	PRIMARY
 | 
						|
compress_ops	0
 | 
						|
compress_ops_ok	0
 | 
						|
uncompress_ops	5
 | 
						|
DROP TABLE t;
 | 
						|
SET GLOBAL innodb_cmp_per_index_enabled=default;
 |