diff options
author | Sergei Golubchik <sergii@pisem.net> | 2014-08-04 21:36:02 +0200 |
---|---|---|
committer | Sergei Golubchik <sergii@pisem.net> | 2014-08-04 21:36:02 +0200 |
commit | 321f589c81105ef9fc23689b7ec8eec3ff98ed39 (patch) | |
tree | a86eb98fad9ee78c33e5c5c84ee7e2881870dea9 /mysql-test/t/stat_tables-enospc.test | |
parent | fece177fe262f3e1d5438afd8d5faa8b60e9b2dd (diff) | |
download | mariadb-git-321f589c81105ef9fc23689b7ec8eec3ff98ed39.tar.gz |
MDEV-6181 EITS could eat all tmpdir space and hang
Don't ignore errors from Count_distinct_field::add(),
pass them to the caller, so that it could abort the data
collection loop.
Diffstat (limited to 'mysql-test/t/stat_tables-enospc.test')
-rw-r--r-- | mysql-test/t/stat_tables-enospc.test | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/mysql-test/t/stat_tables-enospc.test b/mysql-test/t/stat_tables-enospc.test new file mode 100644 index 00000000000..12e42f6adc0 --- /dev/null +++ b/mysql-test/t/stat_tables-enospc.test @@ -0,0 +1,23 @@ +# +# MDEV-6181 EITS could eat all tmpdir space and hang +# +# test that ANALYZE TABLE is immediately aborted when going out of disk space +--source include/have_debug.inc +call mtr.add_suppression("No space left on device"); +create table t1 (a varchar(255), b varchar(255), c varchar(255)); +--disable_query_log +let $i=10000; +while ($i) { + insert t1 values (repeat(format(rand(),10), 20), + repeat(format(rand(),10), 20), + repeat(format(rand(),10), 20)); + dec $i; +} +--enable_query_log +set use_stat_tables=PREFERABLY, optimizer_use_condition_selectivity=3; +set debug_dbug='+d,simulate_file_write_error'; +--replace_regex /'.*'/'tmp-file'/ +analyze table t1; +set debug_dbug=''; +drop table t1; + |