Bug #43521 | Foreign keys: crash if Falcon, 4 clients, much cascading | ||
---|---|---|---|
Submitted: | 9 Mar 2009 23:39 | Modified: | 20 Dec 2013 6:52 |
Reporter: | Peter Gulutzan | Email Updates: | |
Status: | Won't fix | Impact on me: | |
Category: | MySQL Server: General | Severity: | S3 (Non-critical) |
Version: | 6.1.0-alpha-debug | OS: | Linux (SUSE 10 | 32-bit) |
Assigned to: | CPU Architecture: | Any |
[9 Mar 2009 23:39]
Peter Gulutzan
[10 Mar 2009 1:34]
MySQL Verification Team
Thank you for the bug report. Verified as described: -> SET v = v + 1; -> END WHILE; -> END// Query OK, 0 rows affected (0.00 sec) T1 >DELIMITER ; T1 >CALL p(); +------+ | v | +------+ | 0 | +------+ 1 row in set (0.00 sec) +-------+ | error | +-------+ | error | +-------+ 1 row in set (17.10 sec)
[10 Mar 2009 13:53]
Dmitry Lenev
Initial investigation shows that assertion failure in handler::ha_index_end() is caused by the fact that in stored procedures item clean up, which invokes this method, is performed after closing tables used by SP statement rather than vice versa as for prepared statements/normal statements. Therefore this problem should not be specific to new foreign keys implementation.
[10 Mar 2009 15:32]
Dmitry Lenev
Indeed if one runs above routine in one connection to 6.0 version of server and issues several "flush tables" statements in another connection one fairly soon gets a crash in cleanup_items()/Item_subselect::cleanup(). This confirms above hypothesis about problem with cleanup handling in stored procedures and shows that 2nd issue has nothing to do with new foreign keys (since 6.0 does not support them).
[11 Mar 2009 10:33]
Dmitry Lenev
Note that the first issue mentioned by Peter (getting 'error' on client due to child and parent table being out of sync) stems from the same reason as bug #41690 "Foreign keys: failure with two connections" and therefore should be treated as its duplicate. Therefore in this report I suggest to focus on issue #2 only.
[20 Dec 2013 6:52]
Erlend Dahl
6.x project was abandoned years ago.