diff options
author | Vasil Dimov <vasil.dimov@oracle.com> | 2011-02-17 19:14:41 +0200 |
---|---|---|
committer | Vasil Dimov <vasil.dimov@oracle.com> | 2011-02-17 19:14:41 +0200 |
commit | c0ec3532775b2be3dc191aef97af84fad4a72625 (patch) | |
tree | ef5a05908691ef7a4f04ad1b761ac8887ab176d8 /mysql-test | |
parent | 5c96991a6f9086df8eab2626b60fda619d648361 (diff) | |
parent | a27d85aa46147ecb59b1306c02194bd12a3378ed (diff) | |
download | mariadb-git-c0ec3532775b2be3dc191aef97af84fad4a72625.tar.gz |
Merge mysql-5.1-innodb -> mysql-5.5-innodb
Diffstat (limited to 'mysql-test')
-rw-r--r-- | mysql-test/collections/default.experimental | 2 | ||||
-rw-r--r-- | mysql-test/suite/innodb/t/innodb_information_schema.test | 28 |
2 files changed, 23 insertions, 7 deletions
diff --git a/mysql-test/collections/default.experimental b/mysql-test/collections/default.experimental index 7ffc88745ea..1028f7254e8 100644 --- a/mysql-test/collections/default.experimental +++ b/mysql-test/collections/default.experimental @@ -5,8 +5,6 @@ binlog.binlog_multi_engine # joro : NDB tests marked as experiment funcs_1.charset_collation_1 # depends on compile-time decisions -innodb.innodb_information_schema # Bug#48883 2010-05-11 alik Test "innodb_information_schema" takes fewer locks than expected - main.func_math @freebsd # Bug#43020 2010-05-04 alik main.func_math fails on FreeBSD in PB2 main.gis # Bug#52208 2010-11-24 alik gis fails on some platforms (Solaris, HP-UX, Linux) main.gis-rtree @freebsd # Bug#38965 2010-05-04 alik test cases gis-rtree, type_float, type_newdecimal fail in embedded server diff --git a/mysql-test/suite/innodb/t/innodb_information_schema.test b/mysql-test/suite/innodb/t/innodb_information_schema.test index 3dc2a8a40d4..205344a1cd7 100644 --- a/mysql-test/suite/innodb/t/innodb_information_schema.test +++ b/mysql-test/suite/innodb/t/innodb_information_schema.test @@ -118,11 +118,29 @@ SELECT * FROM ```t'\"_str` WHERE c1 = '4' FOR UPDATE; # executes before some of them, resulting in less than expected number # of rows being selected from innodb_locks. If there is a bug and there # are no 14 rows in innodb_locks then this test will fail with timeout. -let $count = 14; -let $table = INFORMATION_SCHEMA.INNODB_LOCKS; --- source include/wait_until_rows_count.inc -# the above enables the query log, re-disable it --- disable_query_log +# Notice that if we query INNODB_LOCKS more often than once per 0.1 sec +# then its contents will never change because the cache from which it is +# filled is updated only if it has not been read for 0.1 seconds. See +# CACHE_MIN_IDLE_TIME_US in trx/trx0i_s.c. +let $cnt=10; +while ($cnt) +{ + let $success=`SELECT COUNT(*) = 14 FROM INFORMATION_SCHEMA.INNODB_LOCKS`; + if ($success) + { + let $cnt=0; + } + if (!$success) + { + real_sleep 0.2; + dec $cnt; + } +} +if (!$success) +{ + -- echo Timeout waiting for rows in INNODB_LOCKS to appear +} + SELECT lock_mode, lock_type, lock_table, lock_index, lock_rec, lock_data FROM INFORMATION_SCHEMA.INNODB_LOCKS ORDER BY lock_data; |