mirror of
https://github.com/MariaDB/server.git
synced 2025-08-05 13:16:09 +03:00
Before commit6112853cda
in MySQL 4.1.1 introduced the parameter innodb_file_per_table, all InnoDB data was written to the InnoDB system tablespace (often named ibdata1). A serious design problem is that once the system tablespace has grown to some size, it cannot shrink even if the data inside it has been deleted. There are also other design problems, such as the server hang MDEV-29930 that should only be possible when using innodb_file_per_table=0 and innodb_undo_tablespaces=0 (storing both tables and undo logs in the InnoDB system tablespace). The parameter innodb_change_buffering was deprecated in commitb5852ffbee
. Starting with commitbaf276e6d4
(MDEV-19229) the number of innodb_undo_tablespaces can be increased, so that the undo logs can be moved out of the system tablespace of an existing installation. If all these things (tables, undo logs, and the change buffer) are removed from the InnoDB system tablespace, the only variable-size data structure inside it is the InnoDB data dictionary. DDL operations on .ibd files was optimized in commit86dc7b4d4c
(MDEV-24626). That should have removed any thinkable performance advantage of using innodb_file_per_table=0. Since there should be no benefit of setting innodb_file_per_table=0, the parameter should be deprecated. Starting with MySQL 5.6 and MariaDB Server 10.0, the default value is innodb_file_per_table=1.
7913 lines
321 KiB
Plaintext
7913 lines
321 KiB
Plaintext
#******************************************************************
|
|
# Test 1: Test the interaction between stats and compression level
|
|
# and logging of compressed pages configuration
|
|
# This testcase is to verify the table/idex level compression stats
|
|
# When the flags are set as follows
|
|
# innodb_cmp_per_index_enabled=ON and innodb_compression_level=0
|
|
# page size 1K,2K,4K,8K,16K
|
|
# check the size and compression stats of the table tab5
|
|
#******************************************************************
|
|
# set the flags
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
SET GLOBAL innodb_compression_level=0;
|
|
#******************************************************************
|
|
# Test 1-1K: innodb_cmp_per_index_enabled=ON and innodb_compression_level=0 with page size 1K
|
|
#******************************************************************
|
|
# create a table with page size=1K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# for deterministic reasons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 5242880
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 5242880
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 5242880
|
|
# restart
|
|
# set the flag on (default off)
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# set the flags
|
|
SET GLOBAL innodb_compression_level=0;
|
|
# fetch the compressed page and check the stats
|
|
# The stats figure may be different/same for each restart.
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table
|
|
# testcase : pass = 1 fail = 0
|
|
SET @comp_val=0;
|
|
SET @uncomp_val=1;
|
|
===============
|
|
After Restart Chekc the stats of the table
|
|
===============
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @comp_val AND 1000
|
|
AND uncompress_ops BETWEEN @uncomp_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 1-2K: innodb_cmp_per_index_enabled=ON and innodb_compression_level=0 with page size 2K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=0;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=1;
|
|
# create a table with page size=2K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=2;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 2097152
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 2097152
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 2097152
|
|
# restart
|
|
# set the flag on (default off)
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# set the flags
|
|
SET GLOBAL innodb_compression_level=0;
|
|
# fetch the compressed page and check the stats
|
|
# The stats figure may be different/same for each restart.
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table
|
|
# testcase : pass = 1 fail = 0
|
|
SET @comp_val=0;
|
|
SET @uncomp_val=2;
|
|
===============
|
|
After Restart Chekc the stats of the table
|
|
===============
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @comp_val AND 1000
|
|
AND uncompress_ops BETWEEN @uncomp_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 1-4K: innodb_cmp_per_index_enabled=ON and innodb_compression_level=0 with page size 4K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=0;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=1;
|
|
# create a table with page size=4K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=4;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 131072
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 131072
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 131072
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 1-8K: innodb_cmp_per_index_enabled=ON and innodb_compression_level=0 with page size 8K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=0;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=1;
|
|
# create a table with page size=8K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 106496
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 180224
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 180224
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 180224
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 1-16K: innodb_cmp_per_index_enabled=ON and innodb_compression_level=0 with page size 16K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=0;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=1;
|
|
# create a table with page size=16K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=16;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 212992
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 311296
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 311296
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 311296
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 2: test the interaction between wl6347 & wl6344 (2.2)
|
|
# This testcase is to verify the table/idex level compression stats
|
|
# When the flags are set as follows
|
|
# innodb_cmp_per_index_enabled=ON and innodb_compression_level=9
|
|
# page size 1K,2K,4K,8K,16K
|
|
# check the size and compression stats of the table tab5
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=0;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=1;
|
|
# set the flags
|
|
SET GLOBAL innodb_compression_level=9;
|
|
#******************************************************************
|
|
# Test 2-1K: innodb_cmp_per_index_enabled=ON and innodb_compression_level=9 with page size 1K
|
|
#******************************************************************
|
|
# create a table with page size=1K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 65536
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 2097152
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# restart
|
|
# set the flag on (default off)
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# set the flags
|
|
SET GLOBAL innodb_compression_level=9;
|
|
# fetch the compressed page and check the stats
|
|
# The stats figure may be different/same for each restart.
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table
|
|
# testcase : pass = 1 fail = 0
|
|
SET @comp_val=0;
|
|
SET @uncomp_val=1;
|
|
===============
|
|
After Restart Chekc the stats of the table
|
|
===============
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @comp_val AND 1000
|
|
AND uncompress_ops BETWEEN @uncomp_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 2-2K: innodb_cmp_per_index_enabled=ON and innodb_compression_level=9 with page size 2K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# create a table with page size=2K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=2;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 65536
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 2097152
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# restart
|
|
# set the flag on (default off)
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# set the flags
|
|
SET GLOBAL innodb_compression_level=9;
|
|
# fetch the compressed page and check the stats
|
|
# The stats figure may be different/same for each restart.
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table
|
|
# testcase : pass = 1 fail = 0
|
|
SET @comp_val=0;
|
|
SET @uncomp_val=1;
|
|
===============
|
|
After Restart Chekc the stats of the table
|
|
===============
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @comp_val AND 1000
|
|
AND uncompress_ops BETWEEN @uncomp_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 2-4K: innodb_cmp_per_index_enabled=ON and innodb_compression_level=9 with page size 4K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# create a table with page size=4K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=4;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 65536
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 159744
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 77824
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 77824
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 77824
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 2-8K: innodb_cmp_per_index_enabled=ON and innodb_compression_level=9 with page size 8K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# create a table with page size=8K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 122880
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 106496
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 155648
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 212992
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 155648
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 155648
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 2-16K: innodb_cmp_per_index_enabled=ON and innodb_compression_level=9 with page size 16K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# create a table with page size=16K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=16;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 245760
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 212992
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 311296
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 344064
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 311296
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 311296
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 3: test the interaction between wl6347 & wl6344 (2.3)
|
|
# This testcase is to verify the table/idex level compression stats
|
|
# When the flags are set as follows
|
|
# innodb_cmp_per_index_enabled=ON and
|
|
# innodb_compression_level=6 (default)
|
|
# page size 1K,2K,4K,8K,16K
|
|
# check the size and compression stats of the table tab5
|
|
#******************************************************************
|
|
#******************************************************************
|
|
# Test 3-1K: innodb_cmp_per_index_enabled=ON and innodb_compression_level=Def with page size 1K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
SET GLOBAL innodb_compression_level=default;
|
|
# create a table with page size=1K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 65536
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 65536
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 3-2K: innodb_cmp_per_index_enabled=ON and innodb_compression_level=Def with page size 2K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
SET GLOBAL innodb_compression_level=default;
|
|
# create a table with page size=2K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=2;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 65536
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 86016
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 3-4K: innodb_cmp_per_index_enabled=ON and innodb_compression_level=Def with page size 4K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
SET GLOBAL innodb_compression_level=default;
|
|
# create a table with page size=4K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=4;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 65536
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 86016
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 77824
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 77824
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 3-8K: innodb_cmp_per_index_enabled=ON and innodb_compression_level=Def with page size 8K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
SET GLOBAL innodb_compression_level=default;
|
|
# create a table with page size=8K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 122880
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 106496
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 172032
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 155648
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 155648
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 3-16K: innodb_cmp_per_index_enabled=ON and innodb_compression_level=Def with page size 16K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
SET GLOBAL innodb_compression_level=default;
|
|
# create a table with page size=16K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=16;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 245760
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 212992
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
# The size of the file with 0 compress = 344064
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 311296
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 311296
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 4: test the interaction between wl6347 & wl6344 (2.5 & 2.6)
|
|
# This testcase is to verify the table/idex level compression stats
|
|
# When the flags are set as follows
|
|
# innodb_cmp_per_index_enabled=ON and
|
|
# Innodb_compression_failure_threshold_pct=0
|
|
# page size 1K,2K,4K,8K,16K
|
|
# check the size and compression stats of the table tab5
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# set the flags
|
|
SET GLOBAL innodb_compression_failure_threshold_pct=0;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# check the flags
|
|
SELECT @@innodb_cmp_per_index_enabled;
|
|
@@innodb_cmp_per_index_enabled 1
|
|
SELECT @@innodb_compression_failure_threshold_pct;
|
|
@@innodb_compression_failure_threshold_pct 0
|
|
SELECT @@innodb_compression_level;
|
|
@@innodb_compression_level 6
|
|
#******************************************************************
|
|
# Test 4-1K: innodb_cmp_per_index_enabled=ON and Innodb_compression_failure_threshold_pct=0 with page size 1K
|
|
#******************************************************************
|
|
# create a table with page size=1K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# restart
|
|
# set the flag on (default off)
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# set the flags
|
|
SET GLOBAL innodb_compression_failure_threshold_pct=0;
|
|
# fetch the compressed page and check the stats
|
|
# The stats figure may be different/same for each restart.
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table
|
|
# testcase : pass = 1 fail = 0
|
|
SET @comp_val=0;
|
|
SET @uncomp_val=1;
|
|
===============
|
|
After Restart Chekc the stats of the table
|
|
===============
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @comp_val AND 1000
|
|
AND uncompress_ops BETWEEN @uncomp_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 4-2K: innodb_cmp_per_index_enabled=ON and Innodb_compression_failure_threshold_pct=0 with page size 2K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# create a table with page size=2K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=2;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 4-4K: innodb_cmp_per_index_enabled=ON and Innodb_compression_failure_threshold_pct=0 with page size 4K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# create a table with page size=4K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=4;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 77824
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 77824
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 77824
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 4-8K: innodb_cmp_per_index_enabled=ON and Innodb_compression_failure_threshold_pct=0 with page size 8K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# create a table with page size=8K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 106496
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 155648
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 155648
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 155648
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 4-16K: innodb_cmp_per_index_enabled=ON and Innodb_compression_failure_threshold_pct=0 with page size 16K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# create a table with page size=16K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=16;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 212992
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 311296
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 311296
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 311296
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 5: test the interaction between wl6347 & wl6344 (2.7)
|
|
# This testcase is to verify the table/idex level compression stats
|
|
# When the flags are set as follows
|
|
# innodb_cmp_per_index_enabled=ON and
|
|
# Innodb_compression_failure_threshold_pct=10
|
|
# page size 1K,2K,4K,8K,16K
|
|
# check the size and compression stats of the table tab5
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# set the flags
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
SET GLOBAL innodb_compression_failure_threshold_pct=10;
|
|
SET GLOBAL innodb_compression_level=Default;
|
|
# check the flags
|
|
SELECT @@innodb_cmp_per_index_enabled;
|
|
@@innodb_cmp_per_index_enabled 1
|
|
SELECT @@innodb_compression_failure_threshold_pct;
|
|
@@innodb_compression_failure_threshold_pct 10
|
|
SELECT @@innodb_compression_level;
|
|
@@innodb_compression_level 6
|
|
#******************************************************************
|
|
# Test 5-1K: innodb_cmp_per_index_enabled=ON and Innodb_compression_failure_threshold_pct=10 with page size 1K
|
|
#******************************************************************
|
|
# create a table with page size=1K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# restart
|
|
# set the flag on (default off)
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# set the flags
|
|
SET GLOBAL innodb_compression_failure_threshold_pct=10;
|
|
# fetch the compressed page and check the stats
|
|
# The stats figure may be different/same for each restart.
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table
|
|
# testcase : pass = 1 fail = 0
|
|
SET @comp_val=0;
|
|
SET @uncomp_val=1;
|
|
===============
|
|
After Restart Chekc the stats of the table
|
|
===============
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @comp_val AND 1000
|
|
AND uncompress_ops BETWEEN @uncomp_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 5-2K: innodb_cmp_per_index_enabled=ON and Innodb_compression_failure_threshold_pct=10 with page size 2K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
SET GLOBAL innodb_compression_failure_threshold_pct=10;
|
|
# create a table with page size=2K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=2;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=2;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 5-4K: innodb_cmp_per_index_enabled=ON and Innodb_compression_failure_threshold_pct=10 with page size 4K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# create a table with page size=4K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=4;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 65536
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 77824
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 77824
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 77824
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 5-8K: innodb_cmp_per_index_enabled=ON and Innodb_compression_failure_threshold_pct=10 with page size 8K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
SET GLOBAL innodb_compression_failure_threshold_pct=10;
|
|
# create a table with page size=8K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 106496
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 155648
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 155648
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 155648
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 5-16K: innodb_cmp_per_index_enabled=ON and Innodb_compression_failure_threshold_pct=10 with page size 16K
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=OFF;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=ON;
|
|
# create a table with page size=16K
|
|
# create indexes on each column.(total 9 indexes)
|
|
# Create table & Index
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(67))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=16;
|
|
CREATE INDEX idx9 ON tab5(col_9(10));
|
|
CREATE INDEX idx8 ON tab5(col_8(10));
|
|
CREATE INDEX idx7 ON tab5(col_7(10));
|
|
CREATE INDEX idx6 ON tab5(col_6(10));
|
|
CREATE INDEX idx5 ON tab5(col_5(10));
|
|
CREATE INDEX idx4 ON tab5(col_4(10));
|
|
CREATE INDEX idx3 ON tab5(col_3(10));
|
|
CREATE INDEX idx2 ON tab5(col_2(10));
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 212992
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 67);
|
|
SET @col_2 = repeat('b', 67);
|
|
SET @col_3 = repeat('c', 67);
|
|
SET @col_4 = repeat('d', 67);
|
|
SET @col_5 = repeat('e', 67);
|
|
SET @col_6 = repeat('f', 67);
|
|
SET @col_7 = repeat('g', 67);
|
|
SET @col_8 = repeat('h', 67);
|
|
SET @col_9 = repeat('i', 67);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
commit;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 311296
|
|
# fetch the compressed page and check the stats
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 311296
|
|
# fetch the compressed same page once again and check the stats
|
|
# the stat figures should be same as above query
|
|
===============
|
|
Fetch Records
|
|
===============
|
|
SELECT col_7,col_8,col_9 FROM tab5
|
|
WHERE col_2='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
|
|
LIMIT 1;
|
|
# check the stats of the table & size of the table
|
|
SET @inl_val=1;
|
|
# Check the stats of the table
|
|
# Check the size of the ibd file
|
|
# testcase : pass = 1 fail = 0
|
|
SELECT count(*) > 0 as "compress_stat"
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE
|
|
compress_ops_ok BETWEEN @inl_val AND 1000
|
|
AND compress_ops BETWEEN @inl_val AND 1000
|
|
AND table_name='tab5' AND database_name='test'
|
|
AND index_name like 'idx%' ;
|
|
compress_stat 1
|
|
The size of the tab5.ibd file: 311296
|
|
DROP TABLE tab5;
|
|
#******************************************************************
|
|
# Test 6: Create multiple tables & indexes having same name in 2 diff DB's
|
|
# Check the stats of the table. (1.1)
|
|
#******************************************************************
|
|
# reset the stat table before starting next testcase
|
|
SET GLOBAL innodb_cmp_per_index_enabled=0;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=1;
|
|
SET GLOBAL innodb_compression_level=default;
|
|
SET GLOBAL innodb_compression_failure_threshold_pct=default;
|
|
# create a table page size=1K
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(255))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1;
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
# check the stats of the table
|
|
SELECT database_name,table_name,index_name,compress_ops,compress_ops_ok
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE database_name='test' and table_name='tab5'
|
|
ORDER BY index_name,table_name,database_name ;
|
|
database_name test
|
|
table_name tab5
|
|
index_name GEN_CLUST_INDEX
|
|
compress_ops 1
|
|
compress_ops_ok 1
|
|
database_name test
|
|
table_name tab5
|
|
index_name idx1
|
|
compress_ops 1
|
|
compress_ops_ok 1
|
|
CREATE DATABASE sb;
|
|
USE sb;
|
|
# create a table page size=1K (testcase-1)
|
|
CREATE TABLE tab5(col_1 TINYBLOB, col_2 TINYTEXT,col_3 BLOB,
|
|
col_4 TEXT,col_5 MEDIUMBLOB,col_6 MEDIUMTEXT,
|
|
col_7 LONGBLOB,col_8 LONGTEXT,col_9 VARCHAR(255))
|
|
ENGINE=INNODB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1;
|
|
CREATE INDEX idx1 ON tab5(col_1(10));
|
|
SELECT database_name,table_name,index_name,compress_ops,compress_ops_ok
|
|
FROM information_schema.innodb_cmp_per_index
|
|
WHERE database_name='sb' and table_name='tab5'
|
|
ORDER BY index_name,table_name,database_name ;
|
|
database_name sb
|
|
table_name tab5
|
|
index_name GEN_CLUST_INDEX
|
|
compress_ops 1
|
|
compress_ops_ok 1
|
|
database_name sb
|
|
table_name tab5
|
|
index_name idx1
|
|
compress_ops 1
|
|
compress_ops_ok 1
|
|
DROP TABLE tab5, test.tab5;
|
|
DROP DATABASE sb;
|
|
# reset the flags
|
|
SET GLOBAL innodb_cmp_per_index_enabled=default;
|
|
SET GLOBAL innodb_compression_failure_threshold_pct=default;
|