From ddcd6867e925613c90e699dcf3e51ab765cf07ba Mon Sep 17 00:00:00 2001 From: Chaithra Gopalareddy Date: Wed, 18 Jul 2012 14:36:08 +0530 Subject: Bug#11762052: 54599: BUG IN QUERY PLANNER ON QUERIES WITH "ORDER BY" AND "LIMIT BY" CLAUSE PROBLEM: When a 'limit' clause is specified in a query along with group by and order by, optimizer chooses wrong index there by examining more number of rows than required. However without the 'limit' clause, optimizer chooses the right index. ANALYSIS: With respect to the query specified, range optimizer chooses the first index as there is a range present ( on 'a'). Optimizer then checks for an index which would give records in sorted order for the 'group by' clause. While checking chooses the second index (on 'c,b,a') based on the 'limit' specified and the selectivity of 'quick_condition_rows' (number of rows present in the range) in 'test_if_skip_sort_order' function. But, it fails to consider that an order by clause on a different column will result in scanning the entire index and hence the estimated number of rows calculated above are wrong (which results in choosing the second index). FIX: Do not enforce the 'limit' clause in the call to 'test_if_skip_sort_order' if we are creating a temporary table. Creation of temporary table indicates that there would be more post-processing and hence will need all the rows. This fix is backported from 5.6. This problem is fixed in 5.6 as part of changes for work log #5558 mysql-test/r/subselect.result: Changes for Bug#11762052 results in the correct number of rows. sql/sql_select.cc: Do not pass the actual 'limit' value if 'need_tmp' is true. --- mysql-test/r/subselect.result | 2 -- 1 file changed, 2 deletions(-) (limited to 'mysql-test') diff --git a/mysql-test/r/subselect.result b/mysql-test/r/subselect.result index 26fe129feed..49cf73677b1 100644 --- a/mysql-test/r/subselect.result +++ b/mysql-test/r/subselect.result @@ -4555,8 +4555,6 @@ SELECT * FROM t1 WHERE EXISTS (SELECT DISTINCT a FROM t2 WHERE t1.a < t2.a ORDER BY b); pk a 1 10 -3 30 -2 20 DROP TABLE t1,t2; CREATE TABLE t1 (a INT, b INT, PRIMARY KEY (a), KEY b (b)); INSERT INTO t1 VALUES (1,NULL), (9,NULL); -- cgit v1.2.1 From 138366002421bd3597d200c6e93ea2c40b774f3e Mon Sep 17 00:00:00 2001 From: Annamalai Gurusami Date: Wed, 25 Jul 2012 13:51:39 +0530 Subject: Bug #13113026 INFORMATION_SCHEMA.INNODB_BUFFER_PAGE_LRUFROM 5.6 BACKPORT Backporting the WL#5716, "Information schema table for InnoDB buffer pool information". Backporting revisions 2876.244.113, 2876.244.102 from mysql-trunk. rb://1175 approved by Jimmy Yang. --- mysql-test/lib/mtr_cases.pm | 3 + .../r/innodb_information_schema_buffer.result | 127 +++++++++++++++++++++ .../t/innodb_information_schema_buffer.test | 76 ++++++++++++ 3 files changed, 206 insertions(+) create mode 100644 mysql-test/suite/innodb_plugin/r/innodb_information_schema_buffer.result create mode 100644 mysql-test/suite/innodb_plugin/t/innodb_information_schema_buffer.test (limited to 'mysql-test') diff --git a/mysql-test/lib/mtr_cases.pm b/mysql-test/lib/mtr_cases.pm index 19eaac6747c..522e516c6e7 100644 --- a/mysql-test/lib/mtr_cases.pm +++ b/mysql-test/lib/mtr_cases.pm @@ -1001,6 +1001,9 @@ sub collect_one_test_case { "innodb_cmp=$plugin_filename$sep" . "innodb_cmp_reset=$plugin_filename$sep" . "innodb_cmpmem=$plugin_filename$sep" . + "innodb_buffer_page=$plugin_filename$sep" . + "innodb_buffer_page_lru=$plugin_filename$sep" . + "innodb_buffer_pool_stats=$plugin_filename$sep" . "innodb_cmpmem_reset=$plugin_filename"; foreach my $k ('master_opt', 'slave_opt') diff --git a/mysql-test/suite/innodb_plugin/r/innodb_information_schema_buffer.result b/mysql-test/suite/innodb_plugin/r/innodb_information_schema_buffer.result new file mode 100644 index 00000000000..bfda2c72757 --- /dev/null +++ b/mysql-test/suite/innodb_plugin/r/innodb_information_schema_buffer.result @@ -0,0 +1,127 @@ +SELECT * FROM INFORMATION_SCHEMA.INNODB_BUFFER_POOL_STATS; +SELECT count(*) FROM INFORMATION_SCHEMA.INNODB_BUFFER_POOL_STATS; +SELECT * FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE; +SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE; +CREATE TABLE infoschema_buffer_test (col1 INT) ENGINE = INNODB; +INSERT INTO infoschema_buffer_test VALUES(9); +SELECT TABLE_NAME, INDEX_NAME, NUMBER_RECORDS, DATA_SIZE, PAGE_STATE, PAGE_TYPE +FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE +WHERE TABLE_NAME like "%infoschema_buffer_test" + and PAGE_STATE="file_page" and PAGE_TYPE="index"; +TABLE_NAME INDEX_NAME NUMBER_RECORDS DATA_SIZE PAGE_STATE PAGE_TYPE +test/infoschema_buffer_test GEN_CLUST_INDEX 1 29 FILE_PAGE INDEX +INSERT INTO infoschema_buffer_test VALUES(19); +SELECT TABLE_NAME, INDEX_NAME, NUMBER_RECORDS, DATA_SIZE, PAGE_STATE, PAGE_TYPE +FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE +WHERE TABLE_NAME like "%infoschema_buffer_test" +and PAGE_STATE="file_page" and PAGE_TYPE="index"; +TABLE_NAME INDEX_NAME NUMBER_RECORDS DATA_SIZE PAGE_STATE PAGE_TYPE +test/infoschema_buffer_test GEN_CLUST_INDEX 2 58 FILE_PAGE INDEX +CREATE INDEX idx ON infoschema_buffer_test(col1); +SELECT TABLE_NAME, INDEX_NAME, NUMBER_RECORDS, DATA_SIZE, PAGE_STATE, PAGE_TYPE +FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE +WHERE TABLE_NAME like "%infoschema_buffer_test" +and PAGE_STATE="file_page" and INDEX_NAME = "idx" and PAGE_TYPE="index"; +TABLE_NAME INDEX_NAME NUMBER_RECORDS DATA_SIZE PAGE_STATE PAGE_TYPE +test/infoschema_buffer_test idx 2 32 FILE_PAGE INDEX +DROP TABLE infoschema_buffer_test; +SELECT TABLE_NAME, INDEX_NAME, NUMBER_RECORDS, DATA_SIZE, PAGE_STATE, PAGE_TYPE +FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE +WHERE TABLE_NAME like "%infoschema_buffer_test"; +TABLE_NAME INDEX_NAME NUMBER_RECORDS DATA_SIZE PAGE_STATE PAGE_TYPE +CREATE TABLE infoschema_parent (id INT NOT NULL, PRIMARY KEY (id)) +ENGINE=INNODB; +CREATE TABLE infoschema_child (id INT, parent_id INT, INDEX par_ind (parent_id), +FOREIGN KEY (parent_id) +REFERENCES infoschema_parent(id) +ON DELETE CASCADE) +ENGINE=INNODB; +SELECT count(*) +FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE +WHERE TABLE_NAME like "%infoschema_child" and PAGE_STATE="file_page" +and PAGE_TYPE="index"; +count(*) +2 +DROP TABLE infoschema_child; +DROP TABLE infoschema_parent; +show create table information_schema.innodb_buffer_page; +Table Create Table +INNODB_BUFFER_PAGE CREATE TEMPORARY TABLE `INNODB_BUFFER_PAGE` ( + `BLOCK_ID` bigint(21) unsigned NOT NULL DEFAULT '0', + `SPACE` bigint(21) unsigned NOT NULL DEFAULT '0', + `PAGE_NUMBER` bigint(21) unsigned NOT NULL DEFAULT '0', + `PAGE_TYPE` varchar(64) DEFAULT NULL, + `FLUSH_TYPE` bigint(21) unsigned NOT NULL DEFAULT '0', + `FIX_COUNT` bigint(21) unsigned NOT NULL DEFAULT '0', + `IS_HASHED` varchar(3) DEFAULT NULL, + `NEWEST_MODIFICATION` bigint(21) unsigned NOT NULL DEFAULT '0', + `OLDEST_MODIFICATION` bigint(21) unsigned NOT NULL DEFAULT '0', + `ACCESS_TIME` bigint(21) unsigned NOT NULL DEFAULT '0', + `TABLE_NAME` varchar(1024) DEFAULT NULL, + `INDEX_NAME` varchar(1024) DEFAULT NULL, + `NUMBER_RECORDS` bigint(21) unsigned NOT NULL DEFAULT '0', + `DATA_SIZE` bigint(21) unsigned NOT NULL DEFAULT '0', + `COMPRESSED_SIZE` bigint(21) unsigned NOT NULL DEFAULT '0', + `PAGE_STATE` varchar(64) DEFAULT NULL, + `IO_FIX` varchar(64) DEFAULT NULL, + `IS_OLD` varchar(3) DEFAULT NULL, + `FREE_PAGE_CLOCK` bigint(21) unsigned NOT NULL DEFAULT '0' +) ENGINE=MEMORY DEFAULT CHARSET=utf8 +show create table information_schema.innodb_buffer_page_lru; +Table Create Table +INNODB_BUFFER_PAGE_LRU CREATE TEMPORARY TABLE `INNODB_BUFFER_PAGE_LRU` ( + `LRU_POSITION` bigint(21) unsigned NOT NULL DEFAULT '0', + `SPACE` bigint(21) unsigned NOT NULL DEFAULT '0', + `PAGE_NUMBER` bigint(21) unsigned NOT NULL DEFAULT '0', + `PAGE_TYPE` varchar(64) DEFAULT NULL, + `FLUSH_TYPE` bigint(21) unsigned NOT NULL DEFAULT '0', + `FIX_COUNT` bigint(21) unsigned NOT NULL DEFAULT '0', + `IS_HASHED` varchar(3) DEFAULT NULL, + `NEWEST_MODIFICATION` bigint(21) unsigned NOT NULL DEFAULT '0', + `OLDEST_MODIFICATION` bigint(21) unsigned NOT NULL DEFAULT '0', + `ACCESS_TIME` bigint(21) unsigned NOT NULL DEFAULT '0', + `TABLE_NAME` varchar(1024) DEFAULT NULL, + `INDEX_NAME` varchar(1024) DEFAULT NULL, + `NUMBER_RECORDS` bigint(21) unsigned NOT NULL DEFAULT '0', + `DATA_SIZE` bigint(21) unsigned NOT NULL DEFAULT '0', + `COMPRESSED_SIZE` bigint(21) unsigned NOT NULL DEFAULT '0', + `COMPRESSED` varchar(3) DEFAULT NULL, + `IO_FIX` varchar(64) DEFAULT NULL, + `IS_OLD` varchar(3) DEFAULT NULL, + `FREE_PAGE_CLOCK` bigint(21) unsigned NOT NULL DEFAULT '0' +) ENGINE=MEMORY DEFAULT CHARSET=utf8 +show create table information_schema.innodb_buffer_pool_stats; +Table Create Table +INNODB_BUFFER_POOL_STATS CREATE TEMPORARY TABLE `INNODB_BUFFER_POOL_STATS` ( + `POOL_SIZE` bigint(21) unsigned NOT NULL DEFAULT '0', + `FREE_BUFFERS` bigint(21) unsigned NOT NULL DEFAULT '0', + `DATABASE_PAGES` bigint(21) unsigned NOT NULL DEFAULT '0', + `OLD_DATABASE_PAGES` bigint(21) unsigned NOT NULL DEFAULT '0', + `MODIFIED_DATABASE_PAGES` bigint(21) unsigned NOT NULL DEFAULT '0', + `PENDING_DECOMPRESS` bigint(21) unsigned NOT NULL DEFAULT '0', + `PENDING_READS` bigint(21) unsigned NOT NULL DEFAULT '0', + `PENDING_FLUSH_LRU` bigint(21) unsigned NOT NULL DEFAULT '0', + `PENDING_FLUSH_LIST` bigint(21) unsigned NOT NULL DEFAULT '0', + `PAGES_MADE_YOUNG` bigint(21) unsigned NOT NULL DEFAULT '0', + `PAGES_NOT_MADE_YOUNG` bigint(21) unsigned NOT NULL DEFAULT '0', + `PAGES_MADE_YOUNG_RATE` double NOT NULL DEFAULT '0', + `PAGES_MADE_NOT_YOUNG_RATE` double NOT NULL DEFAULT '0', + `NUMBER_PAGES_READ` bigint(21) unsigned NOT NULL DEFAULT '0', + `NUMBER_PAGES_CREATED` bigint(21) unsigned NOT NULL DEFAULT '0', + `NUMBER_PAGES_WRITTEN` bigint(21) unsigned NOT NULL DEFAULT '0', + `PAGES_READ_RATE` double NOT NULL DEFAULT '0', + `PAGES_CREATE_RATE` double NOT NULL DEFAULT '0', + `PAGES_WRITTEN_RATE` double NOT NULL DEFAULT '0', + `NUMBER_PAGES_GET` bigint(21) unsigned NOT NULL DEFAULT '0', + `HIT_RATE` bigint(21) unsigned NOT NULL DEFAULT '0', + `YOUNG_MAKE_PER_THOUSAND_GETS` bigint(21) unsigned NOT NULL DEFAULT '0', + `NOT_YOUNG_MAKE_PER_THOUSAND_GETS` bigint(21) unsigned NOT NULL DEFAULT '0', + `NUMBER_PAGES_READ_AHEAD` bigint(21) unsigned NOT NULL DEFAULT '0', + `NUMBER_READ_AHEAD_EVICTED` bigint(21) unsigned NOT NULL DEFAULT '0', + `READ_AHEAD_RATE` double NOT NULL DEFAULT '0', + `READ_AHEAD_EVICTED_RATE` double NOT NULL DEFAULT '0', + `LRU_IO_TOTAL` bigint(21) unsigned NOT NULL DEFAULT '0', + `LRU_IO_CURRENT` bigint(21) unsigned NOT NULL DEFAULT '0', + `UNCOMPRESS_TOTAL` bigint(21) unsigned NOT NULL DEFAULT '0', + `UNCOMPRESS_CURRENT` bigint(21) unsigned NOT NULL DEFAULT '0' +) ENGINE=MEMORY DEFAULT CHARSET=utf8 diff --git a/mysql-test/suite/innodb_plugin/t/innodb_information_schema_buffer.test b/mysql-test/suite/innodb_plugin/t/innodb_information_schema_buffer.test new file mode 100644 index 00000000000..e0543a954f9 --- /dev/null +++ b/mysql-test/suite/innodb_plugin/t/innodb_information_schema_buffer.test @@ -0,0 +1,76 @@ +# Exercise the code path for INFORMATION_SCHEMA.INNODB_BUFFER_POOL_STATS +# and INFORMATION_SCHEMA.INNODB_BUFFER_PAGE + +-- source include/have_innodb_plugin.inc + +-- disable_result_log +SELECT * FROM INFORMATION_SCHEMA.INNODB_BUFFER_POOL_STATS; + +# How many buffer pools we have +SELECT count(*) FROM INFORMATION_SCHEMA.INNODB_BUFFER_POOL_STATS; + +SELECT * FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE; + +# This gives the over all buffer pool size +SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE; + +-- enable_result_log + +# Create a table and check its page info behave correctly in the pool +CREATE TABLE infoschema_buffer_test (col1 INT) ENGINE = INNODB; + +INSERT INTO infoschema_buffer_test VALUES(9); + +# We should be able to see this table in the buffer pool if we check +# right away +SELECT TABLE_NAME, INDEX_NAME, NUMBER_RECORDS, DATA_SIZE, PAGE_STATE, PAGE_TYPE +FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE +WHERE TABLE_NAME like "%infoschema_buffer_test" + and PAGE_STATE="file_page" and PAGE_TYPE="index"; + +# The NUMBER_RECORDS and DATA_SIZE should check with each insertion +INSERT INTO infoschema_buffer_test VALUES(19); + +SELECT TABLE_NAME, INDEX_NAME, NUMBER_RECORDS, DATA_SIZE, PAGE_STATE, PAGE_TYPE +FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE +WHERE TABLE_NAME like "%infoschema_buffer_test" +and PAGE_STATE="file_page" and PAGE_TYPE="index"; + +CREATE INDEX idx ON infoschema_buffer_test(col1); + +SELECT TABLE_NAME, INDEX_NAME, NUMBER_RECORDS, DATA_SIZE, PAGE_STATE, PAGE_TYPE +FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE +WHERE TABLE_NAME like "%infoschema_buffer_test" +and PAGE_STATE="file_page" and INDEX_NAME = "idx" and PAGE_TYPE="index"; + + +# Check the buffer after dropping the table +DROP TABLE infoschema_buffer_test; + +SELECT TABLE_NAME, INDEX_NAME, NUMBER_RECORDS, DATA_SIZE, PAGE_STATE, PAGE_TYPE +FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE +WHERE TABLE_NAME like "%infoschema_buffer_test"; + +# Do one more test +#--replace_regex /'*[0-9]*'/'NUM'/ +CREATE TABLE infoschema_parent (id INT NOT NULL, PRIMARY KEY (id)) +ENGINE=INNODB; + +CREATE TABLE infoschema_child (id INT, parent_id INT, INDEX par_ind (parent_id), + FOREIGN KEY (parent_id) + REFERENCES infoschema_parent(id) + ON DELETE CASCADE) +ENGINE=INNODB; + +SELECT count(*) +FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE +WHERE TABLE_NAME like "%infoschema_child" and PAGE_STATE="file_page" +and PAGE_TYPE="index"; + +DROP TABLE infoschema_child; +DROP TABLE infoschema_parent; + +show create table information_schema.innodb_buffer_page; +show create table information_schema.innodb_buffer_page_lru; +show create table information_schema.innodb_buffer_pool_stats; + -- cgit v1.2.1 From aef1982be0a5ff5bd25fb7658d8792fd9ab40c3f Mon Sep 17 00:00:00 2001 From: Venkata Sidagam Date: Thu, 26 Jul 2012 15:09:22 +0530 Subject: Bug #12876932 - INCORRECT SELECT RESULT ON FEDERATED TABLE Problem description: Table 't' created with two colums having compound index on both the columns under innodb/myisam engine at remote machine. In the local machine same table is created undet the federated engine. A select having where clause with along 'AND' operation gives wrong results on local machine. Analysis: The given query at federated engine is wrongly transformed by federated::create_where_from_key() function and the same was sent to the remote machine. Hence the local machine is showing wrong results. Given query "select c1 from t where c1 <= 2 and c2 = 1;" Query transformed, after ha_federated::create_where_from_key() function is: SELECT `c1`, `c2` FROM `t` WHERE (`c1` IS NOT NULL ) AND ( (`c1` >= 2) AND (`c2` <= 1) ) and the same sent to real_query(). In the above the '<=' and '=' conditions were transformed to '>=' and '<=' respectively. ha_federated::create_where_from_key() function behaving as below: The key_range is having both the start_key and end_key. The start_key is used to get "(`c1` IS NOT NULL )" part of the where clause, this transformation is correct. The end_key is used to get "( (`c1` >= 2) AND (`c2` <= 1) )", which is wrong, here the given conditions('<=' and '=') are changed as wrong conditions('>=' and '<='). The end_key is having {key = 0x39fa6d0 "", length = 10, keypart_map = 3, flag = HA_READ_AFTER_KEY} The store_length is having value '5'. Based on store_length and length values the condition values is applied in HA_READ_AFTER_KEY switch case. The switch case 'HA_READ_AFTER_KEY' is applicable to only the last part of the end_key and for previous parts it is going to 'HA_READ_KEY_OR_NEXT' case, here the '>=' is getting added as a condition instead of '<='. Fix: Updated the 'if' condition in 'HA_READ_AFTER_KEY' case to affect for all parts of the end_key. i.e 'i > 0' will used for end_key, Hence added it in the if condition. mysql-test/suite/federated/federated.test: modified the federated.inc file location mysql-test/suite/federated/federated_archive.test: modified the federated.inc file location mysql-test/suite/federated/federated_bug_13118.test: modified the federated.inc file location mysql-test/suite/federated/federated_bug_25714.test: modified the federated.inc file location mysql-test/suite/federated/federated_bug_35333.test: modified the federated.inc file location mysql-test/suite/federated/federated_debug.test: modified the federated.inc file location mysql-test/suite/federated/federated_innodb.test: modified the federated.inc file location mysql-test/suite/federated/federated_server.test: modified the federated.inc file location mysql-test/suite/federated/federated_transactions.test: modified the federated.inc file location mysql-test/suite/federated/include/federated.inc: moved the file from federated suite to federated/include folder mysql-test/suite/federated/include/federated_cleanup.inc: moved the file from federated suite to federated/include folder mysql-test/suite/federated/include/have_federated_db.inc: moved the file from federated suite to federated/include folder storage/federated/ha_federated.cc: updated the 'if condition' in ha_federated::create_where_from_key() function. --- mysql-test/suite/federated/federated.inc | 11 ----------- mysql-test/suite/federated/federated.test | 4 ++-- mysql-test/suite/federated/federated_archive.test | 4 ++-- mysql-test/suite/federated/federated_bug_13118.test | 4 ++-- mysql-test/suite/federated/federated_bug_25714.test | 4 ++-- mysql-test/suite/federated/federated_bug_35333.test | 4 ++-- mysql-test/suite/federated/federated_cleanup.inc | 9 --------- mysql-test/suite/federated/federated_debug.test | 4 ++-- mysql-test/suite/federated/federated_innodb.test | 4 ++-- mysql-test/suite/federated/federated_server.test | 4 ++-- mysql-test/suite/federated/federated_transactions.test | 4 ++-- mysql-test/suite/federated/have_federated_db.inc | 6 ------ mysql-test/suite/federated/include/federated.inc | 11 +++++++++++ mysql-test/suite/federated/include/federated_cleanup.inc | 9 +++++++++ mysql-test/suite/federated/include/have_federated_db.inc | 6 ++++++ mysql-test/t/partition_federated.test | 2 +- 16 files changed, 45 insertions(+), 45 deletions(-) delete mode 100644 mysql-test/suite/federated/federated.inc delete mode 100644 mysql-test/suite/federated/federated_cleanup.inc delete mode 100644 mysql-test/suite/federated/have_federated_db.inc create mode 100644 mysql-test/suite/federated/include/federated.inc create mode 100644 mysql-test/suite/federated/include/federated_cleanup.inc create mode 100644 mysql-test/suite/federated/include/have_federated_db.inc (limited to 'mysql-test') diff --git a/mysql-test/suite/federated/federated.inc b/mysql-test/suite/federated/federated.inc deleted file mode 100644 index ad640dcbb61..00000000000 --- a/mysql-test/suite/federated/federated.inc +++ /dev/null @@ -1,11 +0,0 @@ ---source include/not_embedded.inc ---source have_federated_db.inc - -connect (master,127.0.0.1,root,,test,$MASTER_MYPORT,); -connect (slave,127.0.0.1,root,,test,$SLAVE_MYPORT,); - -connection master; -CREATE DATABASE federated; - -connection slave; -CREATE DATABASE federated; diff --git a/mysql-test/suite/federated/federated.test b/mysql-test/suite/federated/federated.test index a1d86462c11..55a672587c8 100644 --- a/mysql-test/suite/federated/federated.test +++ b/mysql-test/suite/federated/federated.test @@ -6,7 +6,7 @@ # should work with embedded server after mysqltest is fixed --source include/not_embedded.inc ---source federated.inc +--source suite/federated/include/federated.inc connection default; @@ -1999,4 +1999,4 @@ connection slave; SET @@GLOBAL.CONCURRENT_INSERT= @OLD_SLAVE_CONCURRENT_INSERT; connection default; -source federated_cleanup.inc; +source suite/federated/include/federated_cleanup.inc; diff --git a/mysql-test/suite/federated/federated_archive.test b/mysql-test/suite/federated/federated_archive.test index 1bde23889be..b35b82c6fa6 100644 --- a/mysql-test/suite/federated/federated_archive.test +++ b/mysql-test/suite/federated/federated_archive.test @@ -1,5 +1,5 @@ source include/have_archive.inc; -source federated.inc; +source suite/federated/include/federated.inc; connection slave; @@ -54,5 +54,5 @@ connection slave; DROP TABLE federated.archive_table; -source federated_cleanup.inc; +source suite/federated/include/federated_cleanup.inc; diff --git a/mysql-test/suite/federated/federated_bug_13118.test b/mysql-test/suite/federated/federated_bug_13118.test index fad6be75dac..78115a7959f 100644 --- a/mysql-test/suite/federated/federated_bug_13118.test +++ b/mysql-test/suite/federated/federated_bug_13118.test @@ -1,4 +1,4 @@ -source federated.inc; +source suite/federated/include/federated.inc; connection slave; --disable_warnings @@ -37,5 +37,5 @@ connection slave; DROP TABLE federated.bug_13118_table; -source federated_cleanup.inc; +source suite/federated/include/federated_cleanup.inc; diff --git a/mysql-test/suite/federated/federated_bug_25714.test b/mysql-test/suite/federated/federated_bug_25714.test index 82745b2a094..0d5ecb7d99f 100644 --- a/mysql-test/suite/federated/federated_bug_25714.test +++ b/mysql-test/suite/federated/federated_bug_25714.test @@ -4,7 +4,7 @@ if (`select LENGTH("$MYSQL_BUG25714") = 0`) skip Need bug25714 test program; } -source federated.inc; +source suite/federated/include/federated.inc; connection master; # Disable concurrent inserts to avoid test failures when reading @@ -59,4 +59,4 @@ SET @@GLOBAL.CONCURRENT_INSERT= @OLD_SLAVE_CONCURRENT_INSERT; -source federated_cleanup.inc; +source suite/federated/include/federated_cleanup.inc; diff --git a/mysql-test/suite/federated/federated_bug_35333.test b/mysql-test/suite/federated/federated_bug_35333.test index 58c217d24f2..cea8d5b36b9 100644 --- a/mysql-test/suite/federated/federated_bug_35333.test +++ b/mysql-test/suite/federated/federated_bug_35333.test @@ -9,7 +9,7 @@ --echo # to complete while still indicating a problem. This fix applies to any non-fatal system --echo # error that occurs during a query against I_S.TABLES.de ---source federated.inc +--source suite/federated/include/federated.inc --disable_warnings CREATE DATABASE IF NOT EXISTS realdb; @@ -71,4 +71,4 @@ DROP TABLE IF EXISTS federated.t0; DROP DATABASE realdb; --enable_warnings ---source federated_cleanup.inc +--source suite/federated/include/federated_cleanup.inc diff --git a/mysql-test/suite/federated/federated_cleanup.inc b/mysql-test/suite/federated/federated_cleanup.inc deleted file mode 100644 index e96a7cd2cee..00000000000 --- a/mysql-test/suite/federated/federated_cleanup.inc +++ /dev/null @@ -1,9 +0,0 @@ -connection master; ---disable_warnings -DROP TABLE IF EXISTS federated.t1; -DROP DATABASE federated; - -connection slave; -DROP TABLE IF EXISTS federated.t1; -DROP DATABASE federated; ---enable_warnings diff --git a/mysql-test/suite/federated/federated_debug.test b/mysql-test/suite/federated/federated_debug.test index 4152d2975b3..ba6688e1dc0 100644 --- a/mysql-test/suite/federated/federated_debug.test +++ b/mysql-test/suite/federated/federated_debug.test @@ -1,5 +1,5 @@ --source include/have_debug.inc ---source federated.inc +--source suite/federated/include/federated.inc --echo # --echo # Bug#47525: MySQL crashed (Federated) @@ -36,4 +36,4 @@ DROP TABLE t1; connection default; --echo # Federated cleanup -source federated_cleanup.inc; +source suite/federated/include/federated_cleanup.inc; diff --git a/mysql-test/suite/federated/federated_innodb.test b/mysql-test/suite/federated/federated_innodb.test index 278c5b18661..9212ba12b81 100644 --- a/mysql-test/suite/federated/federated_innodb.test +++ b/mysql-test/suite/federated/federated_innodb.test @@ -4,7 +4,7 @@ # See Bug #40645 Test main.federated_innodb does not always clean up after itself source include/have_innodb.inc; -source federated.inc; +source suite/federated/include/federated.inc; # # Bug#25513 Federated transaction failures @@ -36,4 +36,4 @@ connection slave; drop table federated.t1; -source federated_cleanup.inc; +source suite/federated/include/federated_cleanup.inc; diff --git a/mysql-test/suite/federated/federated_server.test b/mysql-test/suite/federated/federated_server.test index 64ee74edb16..47a2e72b54b 100644 --- a/mysql-test/suite/federated/federated_server.test +++ b/mysql-test/suite/federated/federated_server.test @@ -1,6 +1,6 @@ # WL #3031 This test tests the new servers table as well as # if federated can utilise the servers table --- source federated.inc +-- source suite/federated/include/federated.inc connection slave; create database first_db; @@ -333,4 +333,4 @@ drop procedure p1; drop server if exists s; -source federated_cleanup.inc; +source suite/federated/include/federated_cleanup.inc; diff --git a/mysql-test/suite/federated/federated_transactions.test b/mysql-test/suite/federated/federated_transactions.test index cd08d310273..3cf41a849d6 100644 --- a/mysql-test/suite/federated/federated_transactions.test +++ b/mysql-test/suite/federated/federated_transactions.test @@ -1,5 +1,5 @@ source include/have_innodb.inc; -source federated.inc; +source suite/federated/include/federated.inc; connection slave; DROP TABLE IF EXISTS federated.t1; @@ -35,4 +35,4 @@ INSERT INTO federated.t1 (id, name) VALUES (6, 'fig'); SELECT * FROM federated.t1; DELETE FROM federated.t1; -source federated_cleanup.inc; +source suite/federated/include/federated_cleanup.inc; diff --git a/mysql-test/suite/federated/have_federated_db.inc b/mysql-test/suite/federated/have_federated_db.inc deleted file mode 100644 index 81f49aaa48e..00000000000 --- a/mysql-test/suite/federated/have_federated_db.inc +++ /dev/null @@ -1,6 +0,0 @@ -if (!`SELECT count(*) FROM information_schema.engines WHERE - (support = 'YES' OR support = 'DEFAULT') AND - engine = 'federated'`) -{ - skip Need federated engine; -} diff --git a/mysql-test/suite/federated/include/federated.inc b/mysql-test/suite/federated/include/federated.inc new file mode 100644 index 00000000000..53846dfa7d8 --- /dev/null +++ b/mysql-test/suite/federated/include/federated.inc @@ -0,0 +1,11 @@ +--source include/not_embedded.inc +--source suite/federated/include/have_federated_db.inc + +connect (master,127.0.0.1,root,,test,$MASTER_MYPORT,); +connect (slave,127.0.0.1,root,,test,$SLAVE_MYPORT,); + +connection master; +CREATE DATABASE federated; + +connection slave; +CREATE DATABASE federated; diff --git a/mysql-test/suite/federated/include/federated_cleanup.inc b/mysql-test/suite/federated/include/federated_cleanup.inc new file mode 100644 index 00000000000..e96a7cd2cee --- /dev/null +++ b/mysql-test/suite/federated/include/federated_cleanup.inc @@ -0,0 +1,9 @@ +connection master; +--disable_warnings +DROP TABLE IF EXISTS federated.t1; +DROP DATABASE federated; + +connection slave; +DROP TABLE IF EXISTS federated.t1; +DROP DATABASE federated; +--enable_warnings diff --git a/mysql-test/suite/federated/include/have_federated_db.inc b/mysql-test/suite/federated/include/have_federated_db.inc new file mode 100644 index 00000000000..81f49aaa48e --- /dev/null +++ b/mysql-test/suite/federated/include/have_federated_db.inc @@ -0,0 +1,6 @@ +if (!`SELECT count(*) FROM information_schema.engines WHERE + (support = 'YES' OR support = 'DEFAULT') AND + engine = 'federated'`) +{ + skip Need federated engine; +} diff --git a/mysql-test/t/partition_federated.test b/mysql-test/t/partition_federated.test index 0fe692ecd01..3993aeafd31 100644 --- a/mysql-test/t/partition_federated.test +++ b/mysql-test/t/partition_federated.test @@ -3,7 +3,7 @@ # -- source include/have_partition.inc -- source include/not_embedded.inc --- source suite/federated/have_federated_db.inc +-- source suite/federated/include/have_federated_db.inc --disable_warnings drop table if exists t1; -- cgit v1.2.1 From b6ecca263cc0b1bc974b2917e61b66793276396c Mon Sep 17 00:00:00 2001 From: Venkata Sidagam Date: Thu, 26 Jul 2012 23:23:04 +0530 Subject: Bug #12876932 - INCORRECT SELECT RESULT ON FEDERATED TABLE Fix for pb2 test failure. --- mysql-test/suite/funcs_1/t/is_engines_federated.test | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'mysql-test') diff --git a/mysql-test/suite/funcs_1/t/is_engines_federated.test b/mysql-test/suite/funcs_1/t/is_engines_federated.test index 81eac89c0d2..061df1db76a 100644 --- a/mysql-test/suite/funcs_1/t/is_engines_federated.test +++ b/mysql-test/suite/funcs_1/t/is_engines_federated.test @@ -9,7 +9,7 @@ # let $engine_type= FEDERATED; ---source suite/federated/have_federated_db.inc +--source suite/federated/include/have_federated_db.inc --vertical_results eval SELECT * FROM information_schema.engines WHERE ENGINE = '$engine_type'; -- cgit v1.2.1 From e130d9efbfe7c6231d8912fadb329f279b5787da Mon Sep 17 00:00:00 2001 From: Venkata Sidagam Date: Fri, 27 Jul 2012 12:05:37 +0530 Subject: Bug #12876932 - INCORRECT SELECT RESULT ON FEDERATED TABLE Fixed the missing of federated/include folder at the time of preparing package distribution, issue happens only in 5.1 --- mysql-test/Makefile.am | 1 + 1 file changed, 1 insertion(+) (limited to 'mysql-test') diff --git a/mysql-test/Makefile.am b/mysql-test/Makefile.am index e5783d33a88..9d61aa98764 100644 --- a/mysql-test/Makefile.am +++ b/mysql-test/Makefile.am @@ -81,6 +81,7 @@ TEST_DIRS = t r include std_data std_data/parts collections \ extra/binlog_tests/ extra/rpl_tests \ suite/binlog suite/binlog/t suite/binlog/r suite/binlog/std_data \ suite/federated \ + suite/federated/include \ suite/funcs_1 suite/funcs_1/bitdata \ suite/funcs_1/include suite/funcs_1/lib suite/funcs_1/r \ suite/funcs_1/t suite/funcs_1/views suite/funcs_1/cursors \ -- cgit v1.2.1 From 18087b049eeadfc07f49b65fc227a6ebd5d12e10 Mon Sep 17 00:00:00 2001 From: Venkata Sidagam Date: Sat, 11 Aug 2012 15:43:04 +0530 Subject: Bug #13115401: -SSL-KEY VALUE IS NOT VALIDATED AND IT ALLOWS INSECURE CONNECTIONS IF SPE Problem description: -ssl-key value is not validated, you can assign any bogus text to --ssl-key and it is not verified that it exists, and more importantly, it allows the client to connect to mysqld. Fix: Added proper validations checks for --ssl-key. Note: 1) Documentation changes require for 5.1, 5.5, 5.6 and trunk in the sections listed below and the details are : http://dev.mysql.com/doc/refman/5.6/en/ssl-options.html#option_general_ssl and REQUIRE SSL section of http://dev.mysql.com/doc/refman/5.6/en/grant.html 2) Client having with option '--ssl', should able to get ssl connection. This will be implemented as part of separate fix in 5.6 and trunk. --- mysql-test/r/openssl_1.result | 6 +++--- mysql-test/t/openssl_1.test | 6 ++++++ 2 files changed, 9 insertions(+), 3 deletions(-) (limited to 'mysql-test') diff --git a/mysql-test/r/openssl_1.result b/mysql-test/r/openssl_1.result index 6389438c993..b95c4bb0e76 100644 --- a/mysql-test/r/openssl_1.result +++ b/mysql-test/r/openssl_1.result @@ -44,9 +44,9 @@ ERROR 42000: DELETE command denied to user 'ssl_user4'@'localhost' for table 't1 drop user ssl_user1@localhost, ssl_user2@localhost, ssl_user3@localhost, ssl_user4@localhost, ssl_user5@localhost; drop table t1; -mysqltest: Could not open connection 'default': 2026 SSL connection error -mysqltest: Could not open connection 'default': 2026 SSL connection error -mysqltest: Could not open connection 'default': 2026 SSL connection error +mysqltest: Could not open connection 'default': 2026 SSL connection error: xxxx +mysqltest: Could not open connection 'default': 2026 SSL connection error: xxxx +mysqltest: Could not open connection 'default': 2026 SSL connection error: xxxx SSL error: Unable to get private key from '' mysqltest: Could not open connection 'default': 2026 SSL connection error SSL error: Unable to get certificate from '' diff --git a/mysql-test/t/openssl_1.test b/mysql-test/t/openssl_1.test index 8ca70258bc0..d5fbde1d9d4 100644 --- a/mysql-test/t/openssl_1.test +++ b/mysql-test/t/openssl_1.test @@ -73,22 +73,28 @@ drop table t1; # a different cacert # --exec echo "this query should not execute;" > $MYSQLTEST_VARDIR/tmp/test.sql +--replace_regex /2026 SSL connection error.*/2026 SSL connection error: xxxx/ --error 1 --exec $MYSQL_TEST --ssl-ca=$MYSQL_TEST_DIR/std_data/untrusted-cacert.pem --max-connect-retries=1 < $MYSQLTEST_VARDIR/tmp/test.sql 2>&1 +--echo # # Test that we can't open connection to server if we are using # a blank ca # +--replace_regex /2026 SSL connection error.*/2026 SSL connection error: xxxx/ --error 1 --exec $MYSQL_TEST --ssl-ca= --max-connect-retries=1 < $MYSQLTEST_VARDIR/tmp/test.sql 2>&1 +--echo # # Test that we can't open connection to server if we are using # a nonexistent ca file # +--replace_regex /2026 SSL connection error.*/2026 SSL connection error: xxxx/ --error 1 --exec $MYSQL_TEST --ssl-ca=nonexisting_file.pem --max-connect-retries=1 < $MYSQLTEST_VARDIR/tmp/test.sql 2>&1 +--echo # # Test that we can't open connection to server if we are using -- cgit v1.2.1 From f3a6816fe541c24f41fd8045f78e28eb1da2ce9a Mon Sep 17 00:00:00 2001 From: Annamalai Gurusami Date: Fri, 31 Aug 2012 15:42:00 +0530 Subject: Bug #13453036 ERROR CODE 1118: ROW SIZE TOO LARGE - EVEN THOUGH IT IS NOT. The following error message is misleading because it claims that the BLOB space is not counted. "ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs" When the ROW_FORMAT=compact or ROW_FORMAT=REDUNDANT is used, the BLOB prefix is stored inline along with the row. So the above error message is changed as follows depending on the row format used: For ROW_FORMAT=COMPRESSED or ROW_FORMAT=DYNAMIC, the error message is as follows: "ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline." For ROW_FORMAT=COMPACT or ROW_FORMAT=REDUNDANT, the error message is as follows: "ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline." rb://1252 approved by Marko Makela --- mysql-test/suite/innodb_plugin/r/innodb-index.result | 2 +- mysql-test/suite/innodb_plugin/r/innodb-zip.result | 6 +++--- mysql-test/suite/innodb_plugin/r/innodb.result | 2 +- mysql-test/suite/innodb_plugin/r/innodb_bug53591.result | 2 +- mysql-test/suite/innodb_plugin/r/innodb_misc1.result | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) (limited to 'mysql-test') diff --git a/mysql-test/suite/innodb_plugin/r/innodb-index.result b/mysql-test/suite/innodb_plugin/r/innodb-index.result index 37bd81e5ec6..bf7c382327b 100644 --- a/mysql-test/suite/innodb_plugin/r/innodb-index.result +++ b/mysql-test/suite/innodb_plugin/r/innodb-index.result @@ -1096,7 +1096,7 @@ PRIMARY KEY (b(10), a), INDEX (c(10)) INSERT INTO bug12547647 VALUES (5,repeat('khdfo5AlOq',1900),repeat('g',7731)); COMMIT; UPDATE bug12547647 SET c = REPEAT('b',16928); -ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs +ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline. DROP TABLE bug12547647; SET @r=REPEAT('a',500); CREATE TABLE t1(a INT, diff --git a/mysql-test/suite/innodb_plugin/r/innodb-zip.result b/mysql-test/suite/innodb_plugin/r/innodb-zip.result index 16947bf16dc..5ee0854367a 100644 --- a/mysql-test/suite/innodb_plugin/r/innodb-zip.result +++ b/mysql-test/suite/innodb_plugin/r/innodb-zip.result @@ -125,12 +125,12 @@ CREATE TABLE t1( c TEXT NOT NULL, d TEXT NOT NULL, PRIMARY KEY (c(767),d(767))) ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1 CHARSET=ASCII; -ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs +ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline. CREATE TABLE t1( c TEXT NOT NULL, d TEXT NOT NULL, PRIMARY KEY (c(767),d(767))) ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=2 CHARSET=ASCII; -ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs +ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline. CREATE TABLE t1( c TEXT NOT NULL, d TEXT NOT NULL, PRIMARY KEY (c(767),d(767))) @@ -138,7 +138,7 @@ ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=4 CHARSET=ASCII; drop table t1; CREATE TABLE t1(c TEXT, PRIMARY KEY (c(440))) ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1 CHARSET=ASCII; -ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs +ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline. CREATE TABLE t1(c TEXT, PRIMARY KEY (c(438))) ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1 CHARSET=ASCII; INSERT INTO t1 VALUES(REPEAT('A',512)),(REPEAT('B',512)); diff --git a/mysql-test/suite/innodb_plugin/r/innodb.result b/mysql-test/suite/innodb_plugin/r/innodb.result index 9435670f42d..3d3eaae5e16 100644 --- a/mysql-test/suite/innodb_plugin/r/innodb.result +++ b/mysql-test/suite/innodb_plugin/r/innodb.result @@ -3151,7 +3151,7 @@ c21 CHAR(255), c22 CHAR(255), c23 CHAR(255), c24 CHAR(255), c25 CHAR(255), c26 CHAR(255), c27 CHAR(255), c28 CHAR(255), c29 CHAR(255), c30 CHAR(255), c31 CHAR(255), c32 CHAR(255) ) ENGINE = InnoDB; -ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs +ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline. DROP TABLE IF EXISTS t1; Warnings: Note 1051 Unknown table 't1' diff --git a/mysql-test/suite/innodb_plugin/r/innodb_bug53591.result b/mysql-test/suite/innodb_plugin/r/innodb_bug53591.result index 29f9d09a71c..dae9f0d64d0 100644 --- a/mysql-test/suite/innodb_plugin/r/innodb_bug53591.result +++ b/mysql-test/suite/innodb_plugin/r/innodb_bug53591.result @@ -8,7 +8,7 @@ ERROR HY000: Too big row SHOW WARNINGS; Level Code Message Error 139 Too big row -Error 1118 Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs +Error 1118 Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline. Error 1030 Got error 139 from storage engine DROP TABLE bug53591; SET GLOBAL innodb_file_format=Antelope; diff --git a/mysql-test/suite/innodb_plugin/r/innodb_misc1.result b/mysql-test/suite/innodb_plugin/r/innodb_misc1.result index 5b1774c6e99..81c65c34554 100644 --- a/mysql-test/suite/innodb_plugin/r/innodb_misc1.result +++ b/mysql-test/suite/innodb_plugin/r/innodb_misc1.result @@ -774,7 +774,7 @@ c21 CHAR(255), c22 CHAR(255), c23 CHAR(255), c24 CHAR(255), c25 CHAR(255), c26 CHAR(255), c27 CHAR(255), c28 CHAR(255), c29 CHAR(255), c30 CHAR(255), c31 CHAR(255), c32 CHAR(255) ) ENGINE = InnoDB; -ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs +ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline. SET innodb_strict_mode=OFF; DROP TABLE IF EXISTS t1; Warnings: -- cgit v1.2.1 From 1d812468d588580b4f5f44d1ecd30c77cb2758b0 Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 1 Nov 2012 15:16:42 +0100 Subject: Updated with changes from Percona Server 5.1.66-rel14.1 tarball. --- mysql-test/patches/information_schema.diff | 164 ++++++++--------------------- 1 file changed, 43 insertions(+), 121 deletions(-) (limited to 'mysql-test') diff --git a/mysql-test/patches/information_schema.diff b/mysql-test/patches/information_schema.diff index a91eac75cff..a3a21f7a08d 100644 --- a/mysql-test/patches/information_schema.diff +++ b/mysql-test/patches/information_schema.diff @@ -1,28 +1,20 @@ ---- mysql-test/r/information_schema.result.orig 2009-12-04 16:08:19.000000000 +0900 -+++ mysql-test/r/information_schema.result 2009-12-04 16:09:12.000000000 +0900 -@@ -71,6 +71,21 @@ +--- mysql-test/r/information_schema.result.orig 2009-01-31 03:38:50.000000000 +0200 ++++ mysql-test/r/information_schema.result 2009-01-31 07:51:58.000000000 +0200 +@@ -71,6 +71,13 @@ TRIGGERS USER_PRIVILEGES VIEWS -+INNODB_BUFFER_POOL_PAGES_INDEX -+INNODB_RSEG -+INNODB_LOCKS -+INNODB_BUFFER_POOL_PAGES -+XTRADB_ENHANCEMENTS -+INNODB_TRX -+XTRADB_ADMIN_COMMAND -+INNODB_LOCK_WAITS +INNODB_CMP_RESET -+INNODB_CMP ++INNODB_TRX +INNODB_CMPMEM_RESET -+INNODB_TABLE_STATS ++INNODB_LOCK_WAITS +INNODB_CMPMEM -+INNODB_INDEX_STATS -+INNODB_BUFFER_POOL_PAGES_BLOB ++INNODB_CMP ++INNODB_LOCKS columns_priv db event -@@ -799,6 +814,8 @@ +@@ -799,6 +806,8 @@ TABLES UPDATE_TIME datetime TABLES CHECK_TIME datetime TRIGGERS CREATED datetime @@ -31,172 +23,102 @@ event execute_at datetime event last_executed datetime event starts datetime -@@ -847,12 +864,15 @@ - TABLE_CONSTRAINTS TABLE_NAME select - TABLE_PRIVILEGES TABLE_NAME select - VIEWS TABLE_NAME select -+INNODB_BUFFER_POOL_PAGES_INDEX table_name select -+INNODB_TABLE_STATS table_name select -+INNODB_INDEX_STATS table_name select - delete from mysql.user where user='mysqltest_4'; - delete from mysql.db where user='mysqltest_4'; +@@ -852,7 +861,7 @@ flush privileges; SELECT table_schema, count(*) FROM information_schema.TABLES WHERE table_schema IN ('mysql', 'INFORMATION_SCHEMA', 'test', 'mysqltest') AND table_name<>'ndb_binlog_index' AND table_name<>'ndb_apply_status' GROUP BY TABLE_SCHEMA; table_schema count(*) -information_schema 28 -+information_schema 43 ++information_schema 35 mysql 22 create table t1 (i int, j int); create trigger trg1 before insert on t1 for each row -@@ -1267,6 +1287,21 @@ +@@ -1267,6 +1276,13 @@ TRIGGERS TRIGGER_SCHEMA USER_PRIVILEGES GRANTEE VIEWS TABLE_SCHEMA -+INNODB_BUFFER_POOL_PAGES_INDEX schema_name -+INNODB_RSEG rseg_id -+INNODB_LOCKS lock_id -+INNODB_BUFFER_POOL_PAGES page_type -+XTRADB_ENHANCEMENTS name -+INNODB_TRX trx_id -+XTRADB_ADMIN_COMMAND result_message -+INNODB_LOCK_WAITS requesting_trx_id +INNODB_CMP_RESET page_size -+INNODB_CMP page_size ++INNODB_TRX trx_id +INNODB_CMPMEM_RESET page_size -+INNODB_TABLE_STATS table_name ++INNODB_LOCK_WAITS requesting_trx_id +INNODB_CMPMEM page_size -+INNODB_INDEX_STATS table_name -+INNODB_BUFFER_POOL_PAGES_BLOB space_id ++INNODB_CMP page_size ++INNODB_LOCKS lock_id SELECT t.table_name, c1.column_name FROM information_schema.tables t INNER JOIN -@@ -1310,14 +1345,29 @@ +@@ -1310,6 +1326,13 @@ TRIGGERS TRIGGER_SCHEMA USER_PRIVILEGES GRANTEE VIEWS TABLE_SCHEMA -+INNODB_BUFFER_POOL_PAGES_INDEX schema_name -+INNODB_RSEG rseg_id -+INNODB_LOCKS lock_id -+INNODB_BUFFER_POOL_PAGES page_type -+XTRADB_ENHANCEMENTS name -+INNODB_TRX trx_id -+XTRADB_ADMIN_COMMAND result_message -+INNODB_LOCK_WAITS requesting_trx_id +INNODB_CMP_RESET page_size -+INNODB_CMP page_size ++INNODB_TRX trx_id +INNODB_CMPMEM_RESET page_size -+INNODB_TABLE_STATS table_name ++INNODB_LOCK_WAITS requesting_trx_id +INNODB_CMPMEM page_size -+INNODB_INDEX_STATS table_name -+INNODB_BUFFER_POOL_PAGES_BLOB space_id ++INNODB_CMP page_size ++INNODB_LOCKS lock_id SELECT MAX(table_name) FROM information_schema.tables WHERE table_schema IN ('mysql', 'INFORMATION_SCHEMA', 'test'); MAX(table_name) --VIEWS -+XTRADB_ENHANCEMENTS - SELECT table_name from information_schema.tables - WHERE table_name=(SELECT MAX(table_name) - FROM information_schema.tables WHERE table_schema IN ('mysql', 'INFORMATION_SCHEMA', 'test')); - table_name --VIEWS -+XTRADB_ENHANCEMENTS - DROP TABLE IF EXISTS bug23037; - DROP FUNCTION IF EXISTS get_value; - SELECT COLUMN_NAME, MD5(COLUMN_DEFAULT), LENGTH(COLUMN_DEFAULT) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='bug23037'; -@@ -1386,6 +1436,19 @@ + VIEWS +@@ -1386,6 +1409,13 @@ FILES information_schema.FILES 1 GLOBAL_STATUS information_schema.GLOBAL_STATUS 1 GLOBAL_VARIABLES information_schema.GLOBAL_VARIABLES 1 -+INNODB_BUFFER_POOL_PAGES information_schema.INNODB_BUFFER_POOL_PAGES 1 -+INNODB_BUFFER_POOL_PAGES_BLOB information_schema.INNODB_BUFFER_POOL_PAGES_BLOB 1 -+INNODB_BUFFER_POOL_PAGES_INDEX information_schema.INNODB_BUFFER_POOL_PAGES_INDEX 1 +INNODB_CMP information_schema.INNODB_CMP 1 +INNODB_CMPMEM information_schema.INNODB_CMPMEM 1 +INNODB_CMPMEM_RESET information_schema.INNODB_CMPMEM_RESET 1 +INNODB_CMP_RESET information_schema.INNODB_CMP_RESET 1 -+INNODB_INDEX_STATS information_schema.INNODB_INDEX_STATS 1 +INNODB_LOCKS information_schema.INNODB_LOCKS 1 +INNODB_LOCK_WAITS information_schema.INNODB_LOCK_WAITS 1 -+INNODB_RSEG information_schema.INNODB_RSEG 1 -+INNODB_TABLE_STATS information_schema.INNODB_TABLE_STATS 1 +INNODB_TRX information_schema.INNODB_TRX 1 KEY_COLUMN_USAGE information_schema.KEY_COLUMN_USAGE 1 PARTITIONS information_schema.PARTITIONS 1 PLUGINS information_schema.PLUGINS 1 -@@ -1404,6 +1467,7 @@ - TRIGGERS information_schema.TRIGGERS 1 - USER_PRIVILEGES information_schema.USER_PRIVILEGES 1 - VIEWS information_schema.VIEWS 1 -+XTRADB_ENHANCEMENTS information_schema.XTRADB_ENHANCEMENTS 1 - create table t1(f1 int); - create view v1 as select f1+1 as a from t1; - create table t2 (f1 int, f2 int); ---- mysql-test/r/information_schema_db.result.orig 2009-12-04 16:08:03.000000000 +0900 -+++ mysql-test/r/information_schema_db.result 2009-12-04 16:09:28.000000000 +0900 -@@ -33,6 +33,21 @@ +diff mysql-test/r/information_schema_db.result.orig mysql-test/r/information_schema_db.result +--- mysql-test/r/information_schema_db.result.orig 2008-08-04 09:27:49.000000000 +0300 ++++ mysql-test/r/information_schema_db.result 2008-10-07 12:26:31.000000000 +0300 +@@ -33,6 +33,13 @@ TRIGGERS USER_PRIVILEGES VIEWS -+INNODB_BUFFER_POOL_PAGES_INDEX -+INNODB_RSEG -+INNODB_LOCKS -+INNODB_BUFFER_POOL_PAGES -+XTRADB_ENHANCEMENTS -+INNODB_TRX -+XTRADB_ADMIN_COMMAND -+INNODB_LOCK_WAITS +INNODB_CMP_RESET -+INNODB_CMP ++INNODB_TRX +INNODB_CMPMEM_RESET -+INNODB_TABLE_STATS ++INNODB_LOCK_WAITS +INNODB_CMPMEM -+INNODB_INDEX_STATS -+INNODB_BUFFER_POOL_PAGES_BLOB ++INNODB_CMP ++INNODB_LOCKS show tables from INFORMATION_SCHEMA like 'T%'; Tables_in_information_schema (T%) TABLES ---- mysql-test/r/mysqlshow.result.orig 2009-12-04 16:07:43.000000000 +0900 -+++ mysql-test/r/mysqlshow.result 2009-12-04 16:09:40.000000000 +0900 -@@ -107,6 +107,21 @@ +diff mysql-test/r/mysqlshow.result.orig mysql-test/r/mysqlshow.result +--- mysql-test/r/mysqlshow.result.orig 2008-08-04 09:27:51.000000000 +0300 ++++ mysql-test/r/mysqlshow.result 2008-10-07 12:35:39.000000000 +0300 +@@ -107,6 +107,13 @@ | TRIGGERS | | USER_PRIVILEGES | | VIEWS | -+| INNODB_BUFFER_POOL_PAGES_INDEX | -+| INNODB_RSEG | -+| INNODB_LOCKS | -+| INNODB_BUFFER_POOL_PAGES | -+| XTRADB_ENHANCEMENTS | -+| INNODB_TRX | -+| XTRADB_ADMIN_COMMAND | -+| INNODB_LOCK_WAITS | +| INNODB_CMP_RESET | -+| INNODB_CMP | ++| INNODB_TRX | +| INNODB_CMPMEM_RESET | -+| INNODB_TABLE_STATS | ++| INNODB_LOCK_WAITS | +| INNODB_CMPMEM | -+| INNODB_INDEX_STATS | -+| INNODB_BUFFER_POOL_PAGES_BLOB | ++| INNODB_CMP | ++| INNODB_LOCKS | +---------------------------------------+ Database: INFORMATION_SCHEMA +---------------------------------------+ -@@ -140,6 +155,21 @@ +@@ -140,6 +147,13 @@ | TRIGGERS | | USER_PRIVILEGES | | VIEWS | -+| INNODB_BUFFER_POOL_PAGES_INDEX | -+| INNODB_RSEG | -+| INNODB_LOCKS | -+| INNODB_BUFFER_POOL_PAGES | -+| XTRADB_ENHANCEMENTS | -+| INNODB_TRX | -+| XTRADB_ADMIN_COMMAND | -+| INNODB_LOCK_WAITS | +| INNODB_CMP_RESET | -+| INNODB_CMP | ++| INNODB_TRX | +| INNODB_CMPMEM_RESET | -+| INNODB_TABLE_STATS | ++| INNODB_LOCK_WAITS | +| INNODB_CMPMEM | -+| INNODB_INDEX_STATS | -+| INNODB_BUFFER_POOL_PAGES_BLOB | ++| INNODB_CMP | ++| INNODB_LOCKS | +---------------------------------------+ Wildcard: inf_rmation_schema +--------------------+ -- cgit v1.2.1