Manual merge.
This commit is contained in:
commit
64f6fb7c8f
@ -833,3 +833,16 @@ Table Op Msg_type Msg_text
|
|||||||
test.t2 check status OK
|
test.t2 check status OK
|
||||||
drop table t1,t2;
|
drop table t1,t2;
|
||||||
##################################################################
|
##################################################################
|
||||||
|
#
|
||||||
|
# Bug #46075: Assertion failed: 0, file .\protocol.cc, line 416
|
||||||
|
#
|
||||||
|
CREATE TABLE t1(a INT);
|
||||||
|
SET max_heap_table_size = 16384;
|
||||||
|
SET @old_myisam_data_pointer_size = @@myisam_data_pointer_size;
|
||||||
|
SET GLOBAL myisam_data_pointer_size = 2;
|
||||||
|
INSERT INTO t1 VALUES (1), (2), (3), (4), (5);
|
||||||
|
INSERT IGNORE INTO t1 SELECT t1.a FROM t1,t1 t2,t1 t3,t1 t4,t1 t5,t1 t6,t1 t7;
|
||||||
|
Got one of the listed errors
|
||||||
|
SET GLOBAL myisam_data_pointer_size = @old_myisam_data_pointer_size;
|
||||||
|
DROP TABLE t1;
|
||||||
|
End of 5.0 tests
|
||||||
|
@ -394,3 +394,24 @@ check table t2 extended;
|
|||||||
drop table t1,t2;
|
drop table t1,t2;
|
||||||
--echo ##################################################################
|
--echo ##################################################################
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug #46075: Assertion failed: 0, file .\protocol.cc, line 416
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
CREATE TABLE t1(a INT);
|
||||||
|
# To force MyISAM temp. table in the following INSERT ... SELECT.
|
||||||
|
SET max_heap_table_size = 16384;
|
||||||
|
# To overflow the temp. table.
|
||||||
|
SET @old_myisam_data_pointer_size = @@myisam_data_pointer_size;
|
||||||
|
SET GLOBAL myisam_data_pointer_size = 2;
|
||||||
|
|
||||||
|
INSERT INTO t1 VALUES (1), (2), (3), (4), (5);
|
||||||
|
|
||||||
|
--error ER_RECORD_FILE_FULL,ER_RECORD_FILE_FULL
|
||||||
|
INSERT IGNORE INTO t1 SELECT t1.a FROM t1,t1 t2,t1 t3,t1 t4,t1 t5,t1 t6,t1 t7;
|
||||||
|
|
||||||
|
# Cleanup
|
||||||
|
SET GLOBAL myisam_data_pointer_size = @old_myisam_data_pointer_size;
|
||||||
|
DROP TABLE t1;
|
||||||
|
|
||||||
|
--echo End of 5.0 tests
|
||||||
|
@ -10652,6 +10652,11 @@ bool create_myisam_from_heap(THD *thd, TABLE *table, TMP_TABLE_PARAM *param,
|
|||||||
if (table->s->db_type() != heap_hton ||
|
if (table->s->db_type() != heap_hton ||
|
||||||
error != HA_ERR_RECORD_FILE_FULL)
|
error != HA_ERR_RECORD_FILE_FULL)
|
||||||
{
|
{
|
||||||
|
/*
|
||||||
|
We don't want this error to be converted to a warning, e.g. in case of
|
||||||
|
INSERT IGNORE ... SELECT.
|
||||||
|
*/
|
||||||
|
thd->fatal_error();
|
||||||
table->file->print_error(error,MYF(0));
|
table->file->print_error(error,MYF(0));
|
||||||
DBUG_RETURN(1);
|
DBUG_RETURN(1);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user