mariadb/mysql-test/main/myisam-big.test
Monty cc4d9200c4 MDEV-33813 ERROR 1021 (HY000): Disk full (./org/test1.MAI); waiting for someone to free some space... (errno: 28 "No space left on device")
The problem with MariaDB waiting was fixed earlier.
However the server still gives the old error,in case of disk full,
that includes "waiting for someone to free some space" even if
there is now wait.

This commit changes the error message for the non waiting case to:
Disk got full writing 'db.table' (Errcode: 28 "No space left on device")

Disk got full writing 'test.t1' (Errcode: 28 "No space left on device")Disk got full writing 'test.t1' (Errcode: 28 "No space left on device")Disk got full writing 'test.t1' (Errcode: 28 "No space left on device")
2025-03-06 09:40:55 +02:00

77 lines
2.2 KiB
Text

#
# Test bugs in the MyISAM code that require more space/time
--source include/big_test.inc
--source include/have_debug.inc
# Initialise
--disable_warnings
drop table if exists t1,t2;
--enable_warnings
call mtr.add_suppression("Index.*try to repair it");
call mtr.add_suppression("Disk got full");
call mtr.add_suppression("Got an error from thread_id");
#
# BUG#925377:
# Querying myisam table metadata while 'alter table..enable keys' is
# running may corrupt the table
#
create table t1 (id int, sometext varchar(100)) engine=myisam;
insert into t1 values (1, "hello"),(2, "hello2"),(4, "hello3"),(4, "hello4");
create table t2 like t1;
insert into t1 select * from t1;
insert into t2 select * from t1;
insert into t1 select * from t1;
insert into t2 select * from t1;
insert into t1 select * from t1;
insert into t2 select * from t1;
insert into t1 select * from t1;
insert into t2 select * from t1;
insert into t1 select * from t1;
insert into t2 select * from t1;
insert into t1 select * from t1;
insert into t2 select * from t1;
insert into t1 select * from t1;
insert into t2 select * from t1;
insert into t1 select * from t1;
insert into t2 select * from t1;
insert into t1 select * from t1;
insert into t2 select * from t1;
insert into t1 select * from t1;
insert into t2 select * from t1;
insert into t1 select * from t1;
insert into t2 select * from t1;
insert into t1 select * from t1;
insert into t2 select * from t1;
insert into t1 select * from t1;
insert into t2 select * from t1;
insert into t1 select * from t1;
insert into t2 select * from t1;
insert into t1 select * from t1;
select count(*) from t1;
connect (con2,localhost,root,,);
connection con2;
alter table t1 add index (id), add index(sometext), add index(sometext,id);
alter table t1 disable keys;
send alter table t1 enable keys;
connection default;
--sleep 1
--disable_query_log
--disable_result_log
show table status like 't1';
--enable_query_log
--enable_result_log
connection con2;
reap;
disconnect con2;
connection default;
#
# Test error message from disk full
SET @saved_dbug = @@SESSION.debug_dbug;
SET debug_dbug='+d,simulate_file_pwrite_error';
--error ER_DISK_FULL
insert into t1 select * from t2;
SET debug_dbug= @saved_dbug;
drop table t1,t2;