mirror of
https://github.com/MariaDB/server.git
synced 2025-08-29 00:08:14 +03:00
The test innodb.innodb_wl6326 that had been disabled in 10.4 due to
MDEV-21535 is failing on 10.5 due to a different reason: the removal
of the MLOG_COMP_END_COPY_CREATED operations in MDEV-12353
commit 276f996af9
caused PAGE_LAST_INSERT
to be set to something nonzero by the function page_copy_rec_list_end().
This in turn would cause btr_page_get_split_rec_to_right() to behave
differently: we would not attempt to split the page at all, but simply
insert the new record into the new, empty, right leaf page.
Even though the change reduced the sizes of some tables, it is better
to aim for balanced trees.
page_copy_rec_list_end(), PageBulk::finishPage():
Preserve PAGE_LAST_INSERT, PAGE_N_DIRECTION, PAGE_DIRECTION.
PageBulk::finish(): Move some common code from PageBulk::finishPage().
8085 lines
338 KiB
Plaintext
8085 lines
338 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_file_per_table=on;
|
|
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(255))
|
|
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', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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_file_per_table=on;
|
|
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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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(255))
|
|
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', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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_file_per_table=on;
|
|
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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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(255))
|
|
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', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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: 163840
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 163840
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 163840
|
|
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(255))
|
|
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: 122880
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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: 212992
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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
|
|
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(255))
|
|
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: 245760
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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: 327680
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 327680
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 327680
|
|
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_file_per_table=on;
|
|
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(255))
|
|
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', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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_file_per_table=on;
|
|
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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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(255))
|
|
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', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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_file_per_table=on;
|
|
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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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(255))
|
|
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', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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: 81920
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 81920
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 81920
|
|
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(255))
|
|
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: 122880
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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: 163840
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 163840
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 163840
|
|
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(255))
|
|
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: 245760
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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: 327680
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 327680
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 327680
|
|
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(255))
|
|
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', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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(255))
|
|
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', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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(255))
|
|
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', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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: 81920
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 81920
|
|
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(255))
|
|
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: 122880
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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: 163840
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 163840
|
|
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(255))
|
|
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: 245760
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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: 327680
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 327680
|
|
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_file_per_table;
|
|
@@innodb_file_per_table 1
|
|
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(255))
|
|
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', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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;
|
|
SET GLOBAL innodb_file_per_table=on;
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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(255))
|
|
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', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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(255))
|
|
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', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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: 81920
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 81920
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 81920
|
|
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(255))
|
|
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: 122880
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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: 163840
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 163840
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 163840
|
|
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(255))
|
|
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: 245760
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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: 327680
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 327680
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 327680
|
|
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_file_per_table=on;
|
|
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_file_per_table;
|
|
@@innodb_file_per_table 1
|
|
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(255))
|
|
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', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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;
|
|
SET GLOBAL innodb_file_per_table=on;
|
|
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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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(255))
|
|
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', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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(255))
|
|
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', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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: 81920
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 81920
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 81920
|
|
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(255))
|
|
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: 122880
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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: 163840
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 163840
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 163840
|
|
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(255))
|
|
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: 245760
|
|
# for determintic resons simple data should be inserted.
|
|
# insert some 100 records
|
|
# Load the data
|
|
SET @col_1 = repeat('a', 100);
|
|
SET @col_2 = repeat('b', 100);
|
|
SET @col_3 = repeat('c', 100);
|
|
SET @col_4 = repeat('d', 100);
|
|
SET @col_5 = repeat('e', 100);
|
|
SET @col_6 = repeat('f', 100);
|
|
SET @col_7 = repeat('g', 100);
|
|
SET @col_8 = repeat('h', 100);
|
|
SET @col_9 = repeat('i', 100);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@col_9);
|
|
INSERT INTO tab5
|
|
VALUES (@col_1,@col_2,@col_3,@col_4,@cl_5,@col_6,@col_7,@col_8,@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: 327680
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 327680
|
|
# 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;
|
|
col_7 gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
|
|
col_8 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
|
col_9 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
|
# 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: 327680
|
|
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_file_per_table=ON;
|
|
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_file_per_table=default;
|
|
SET GLOBAL innodb_cmp_per_index_enabled=default;
|
|
SET GLOBAL innodb_compression_failure_threshold_pct=default;
|