Bug #230 | UPDATE using 2 tables / ERROR 1114: The table is full | ||
---|---|---|---|
Submitted: | 4 Apr 2003 8:51 | Modified: | 4 Apr 2003 9:03 |
Reporter: | Gerrit Hannaert | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server | Severity: | S3 (Non-critical) |
Version: | 4.0.12 | OS: | Linux (Linux) |
Assigned to: | CPU Architecture: | Any |
[4 Apr 2003 8:51]
Gerrit Hannaert
[4 Apr 2003 8:57]
MySQL Verification Team
Yes, this is a known problem. It is already fixed in 4.0.13, which will come out this month. This is a patch: ===== sql/sql_update.cc 1.79 vs 1.80 ===== *** /tmp/sql_update.cc-1.79-11704 Wed Mar 19 00:45:43 2003 --- 1.80/sql/sql_update.cc Wed Apr 2 17:05:30 2003 *************** *** 741,747 **** (error != HA_ERR_FOUND_DUPP_KEY && error != HA_ERR_FOUND_DUPP_UNIQUE)) { ! if (create_myisam_from_heap(table, tmp_table_param + offset, error, 1)) { do_update=0; DBUG_RETURN(1); // Not a table_is_full error --- 741,747 ---- (error != HA_ERR_FOUND_DUPP_KEY && error != HA_ERR_FOUND_DUPP_UNIQUE)) { ! if (create_myisam_from_heap(tmp_table, tmp_table_param + offset, error, 1)) { do_update=0; DBUG_RETURN(1); // Not a table_is_full error
[4 Apr 2003 9:01]
Gerrit Hannaert
- SET BIG_TABLES=1 does not help - Using two InnoDB tables or two MyISAM tables does not help - The query takes almost 15 seconds before failing. During this time the 'mysqladmin processlist -p' status shows the state "Sending data" (so it's not copying to a tmp table?)
[4 Apr 2003 9:02]
Gerrit Hannaert
Oops, didn't see your comment. Thanks a lot, very helpful!