| Bug #39236 | Truncate temporary federated table crashes server | ||
|---|---|---|---|
| Submitted: | 4 Sep 2008 10:03 | ||
| Reporter: | Sveta Smirnova | Email Updates: | |
| Status: | Verified | Impact on me: | |
| Category: | MySQL Server: Federated storage engine | Severity: | S3 (Non-critical) |
| Version: | 5.0 bzr | OS: | Any |
| Assigned to: | CPU Architecture: | Any | |
[4 Sep 2008 10:07]
Sveta Smirnova
Backtrace: #0 0x002ce402 in __kernel_vsyscall () #1 0x0046264f in pthread_kill () from /lib/libpthread.so.0 #2 0x083b6ab2 in write_core (sig=11) at stacktrace.c:254 #3 0x08226897 in handle_segfault (sig=11) at mysqld.cc:2376 #4 <signal handler called> #5 0x083ef726 in ha_federated::info (this=0xa161dd8, flag=66) at ha_federated.cc:2624 #6 0x082d31c0 in mysql_truncate (thd=0xa137990, table_list=0xa138f40, dont_send_ok=false) at sql_delete.cc:906 #7 0x08247dd0 in mysql_execute_command (thd=0xa137990) at sql_parse.cc:3705 #8 0x0824d2ad in mysql_parse (thd=0xa137990, inBuf=0xa138ea8 "truncate table federated.t1", length=27, found_semicolon=0xb744c250) at sql_parse.cc:6185 #9 0x0824ddcd in dispatch_command (command=COM_QUERY, thd=0xa137990, packet=0xa141a09 "truncate table federated.t1", packet_length=28) at sql_parse.cc:1874 #10 0x0824f2f5 in do_command (thd=0xa137990) at sql_parse.cc:1580 #11 0x0824f7d6 in handle_one_connection (arg=0xa137990) at sql_parse.cc:1186 #12 0x0045fbd4 in start_thread () from /lib/libpthread.so.0 #13 0x003b74fe in clone () from /lib/libc.so.6

Description: If trying to truncate temporary federated table server crashes. How to repeat: -- source include/not_embedded.inc source include/federated.inc; connection slave; --disable_warnings DROP TABLE IF EXISTS federated.bug_13118_table; --enable_warnings CREATE TABLE federated.bug_13118_table ( `foo` integer, `bar` integer ); connection master; --disable_warnings DROP TABLE IF EXISTS federated.t1; --enable_warnings --replace_result $SLAVE_MYPORT SLAVE_PORT eval CREATE TEMPORARY TABLE federated.t1 ( `foo` integer, `bar` integer ) ENGINE="FEDERATED" CONNECTION='mysql://root@127.0.0.1:$SLAVE_MYPORT/federated/bug_13118_table'; truncate table federated.t1; Suggested fix: Process truncate correctly like for not temporary federated table or send error to user instead of crashing.