Bug #76437 | InnoDB: Failing assertion: !dict_index_is_spatial(index) | ||
---|---|---|---|
Submitted: | 23 Mar 2015 0:32 | Modified: | 9 Apr 2015 20:08 |
Reporter: | Roel Van de Paar | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: DDL | Severity: | S6 (Debug Builds) |
Version: | 5.7.6, 5.7.8, 8.0.0 | OS: | Any |
Assigned to: | CPU Architecture: | Any |
[23 Mar 2015 0:32]
Roel Van de Paar
[23 Mar 2015 8:47]
MySQL Verification Team
Hello Roel, Thank you for the report and test case. Confirmed that 5.7.6, 5.7.8 and 5.8.0 debug builds are affected. Thanks, Umesh
[23 Mar 2015 8:47]
MySQL Verification Team
// 5.7.6 - only debug build affected bin/mysql_install_db --basedir=/export/umesh/mysql-5.7.6 --datadir=/export/umesh/mysql-5.7.6/76437 -v bin/mysqld-debug --basedir=/export/umesh/mysql-5.7.6 --datadir=/export/umesh/mysql-5.7.6/76437 --sql_mode=ONLY_FULL_GROUP_BY --core-file --socket=/tmp/mysql_ushastry.sock --port=15000 --log-error=/export/umesh/mysql-5.7.6/76437/log.err 2>&1 & - build commit: e1298eb6a8e2247361533811930a07fde7aff618 date: 2015-02-26 15:29:31 +0100 build-date: 2015-02-26 15:35:58 +0100 short: e1298eb branch: mysql-5.7.6-m16-release MySQL source 5.7.6 (gdb) bt #0 0x00007faffd94b771 in pthread_kill () from /lib64/libpthread.so.0 #1 0x00000000013ee069 in my_write_core (sig=6) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/mysys/stacktrace.c:247 #2 0x0000000000bdeba0 in handle_fatal_signal (sig=6) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/sql/signal_handler.cc:220 #3 <signal handler called> #4 0x00007faffc5515c9 in raise () from /lib64/libc.so.6 #5 0x00007faffc552cd8 in abort () from /lib64/libc.so.6 #6 0x000000000160d6bb in ut_dbg_assertion_failed (expr=0x1c9ce9f "!dict_index_is_spatial(index)", file=0x1c9c4f0 "/export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/storage/innobase/btr/btr0cur.cc", line=2573) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/storage/innobase/ut/ut0dbg.cc:67 #7 0x000000000163dacc in btr_cur_open_at_rnd_pos_func (index=0x7faf88044fc8, latch_mode=1, cursor=0x7fafe5ad48b0, file=0x1c9c4f0 "/export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/storage/innobase/btr/btr0cur.cc", line=5851, mtr=0x7fafe5ad43a0) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/storage/innobase/btr/btr0cur.cc:2573 #8 0x00000000016455d4 in btr_estimate_number_of_different_key_vals (index=0x7faf88044fc8) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/storage/innobase/btr/btr0cur.cc:5851 #9 0x00000000016d4572 in dict_stats_update_transient_for_index (index=0x7faf88044fc8) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/storage/innobase/dict/dict0stats.cc:859 #10 0x00000000016d8735 in dict_stats_update_for_index (index=0x7faf88044fc8) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/storage/innobase/dict/dict0stats.cc:3032 #11 0x00000000014558ed in alter_stats_norebuild (ha_alter_info=0x7fafe5ad6f10, ctx=0x7faf88040950, altered_table=0x7faf8801a2c0, table_name=0x7faf8801d5cd "tab", thd=0x7faf88000bb0) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/storage/innobase/handler/handler0alter.cc:6166 #12 0x00000000014579c0 in ha_innobase::commit_inplace_alter_table (this=0x7faf8801c470, altered_table=0x7faf8801a2c0, ha_alter_info=0x7fafe5ad6f10, commit=true) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/storage/innobase/handler/handler0alter.cc:6855 #13 0x0000000000c465e8 in handler::ha_commit_inplace_alter_table (this=0x7faf8801c470, altered_table=0x7faf8801a2c0, ha_alter_info=0x7fafe5ad6f10, commit=true) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/sql/handler.cc:4389 #14 0x0000000001173151 in mysql_inplace_alter_table (thd=0x7faf88000bb0, table_list=0x7faf88005bd0, table=0x7faf8803f8e0, altered_table=0x7faf8801a2c0, ha_alter_info=0x7fafe5ad6f10, inplace_supported=HA_ALTER_INPLACE_SHARED_LOCK_AFTER_PREPARE, target_mdl_request=0x7fafe5ad7890, alter_ctx=0x7fafe5ad6470) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/sql/sql_table.cc:6982 #15 0x0000000001177ade in mysql_alter_table (thd=0x7faf88000bb0, new_db=0x7faf88006148 "test", new_name=0x7faf88005b98 "tab", create_info=0x7fafe5ad83c0, table_list=0x7faf88005bd0, alter_info=0x7fafe5ad7dd0) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/sql/sql_table.cc:8882 #16 0x00000000010e3104 in mysql_execute_command (thd=0x7faf88000bb0) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/sql/sql_parse.cc:2950 #17 0x00000000010e9a6f in mysql_parse (thd=0x7faf88000bb0, parser_state=0x7fafe5ad95d0) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/sql/sql_parse.cc:5129 #18 0x00000000010debc8 in dispatch_command (command=COM_QUERY, thd=0x7faf88000bb0, packet=0x7faf88009ce1 "CREATE SPATIAL INDEX idx2 ON tab(c2 ASC)", packet_length=40) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/sql/sql_parse.cc:1249 #19 0x00000000010dd693 in do_command (thd=0x7faf88000bb0) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/sql/sql_parse.cc:835 #20 0x000000000120444f in handle_connection (arg=0x35d2720) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/sql/conn_handler/connection_handler_per_thread.cc:298 #21 0x00000000017770f1 in pfs_spawn_thread (arg=0x35c5900) at /export/home/pb2/build/sb_0-14552753-1424962715.41/mysql-5.7.6-m16/storage/perfschema/pfs.cc:2147 #22 0x00007faffd946df3 in start_thread () from /lib64/libpthread.so.0 #23 0x00007faffc61247d in clone () from /lib64/libc.so.6 (gdb)
[23 Mar 2015 8:48]
MySQL Verification Team
// 5.7.8 only debug build affected bin/mysql_install_db --basedir=/export/umesh/mysql-5.7.8 --datadir=/export/umesh/mysql-5.7.8/76437 -v bin/mysqld-debug --basedir=/export/umesh/mysql-5.7.8 --datadir=/export/umesh/mysql-5.7.8/76437 --sql_mode=ONLY_FULL_GROUP_BY --core-file --socket=/tmp/mysql_ushastry.sock --port=15000 --log-error=/export/umesh/mysql-5.7.8/76437/log.err 2>&1 & - build commit: 91153f3385c4917a215aa4c7818b3f6265608286 date: 2015-03-20 14:48:27 +0100 build-date: 2015-03-20 18:03:24 +0100 short: 91153f3 branch: mysql-5.7 MySQL source 5.7.8 (gdb) bt #0 0x00007fe43b9e6771 in pthread_kill () from /lib64/libpthread.so.0 #1 0x00000000018c6688 in my_write_core (sig=6) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/mysys/stacktrace.c:247 #2 0x0000000000f4b39e in handle_fatal_signal (sig=6) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/sql/signal_handler.cc:220 #3 <signal handler called> #4 0x00007fe43a5ec5c9 in raise () from /lib64/libc.so.6 #5 0x00007fe43a5edcd8 in abort () from /lib64/libc.so.6 #6 0x0000000001ae4b43 in ut_dbg_assertion_failed (expr=0x229dbcf "!dict_index_is_spatial(index)", file=0x229d180 "/export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/storage/innobase/btr/btr0cur.cc", line=2573) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/storage/innobase/ut/ut0dbg.cc:67 #7 0x0000000001b145eb in btr_cur_open_at_rnd_pos_func (index=0x7fe3b403b7b8, latch_mode=1, cursor=0x7fe43020a6b0, file=0x229d180 "/export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/storage/innobase/btr/btr0cur.cc", line=6004, mtr=0x7fe43020a740) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/storage/innobase/btr/btr0cur.cc:2573 #8 0x0000000001b1c1da in btr_estimate_number_of_different_key_vals (index=0x7fe3b403b7b8) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/storage/innobase/btr/btr0cur.cc:6004 #9 0x0000000001baa6be in dict_stats_update_transient_for_index (index=0x7fe3b403b7b8) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/storage/innobase/dict/dict0stats.cc:859 #10 0x0000000001bae7db in dict_stats_update_for_index (index=0x7fe3b403b7b8) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/storage/innobase/dict/dict0stats.cc:3032 #11 0x000000000192d33d in alter_stats_norebuild (ha_alter_info=0x7fe43020c920, ctx=0x7fe3b4037060, altered_table=0x7fe3b402aae0, table_name=0x7fe3b403291d "tab", thd=0x7fe3b4000bb0) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/storage/innobase/handler/handler0alter.cc:6170 #12 0x000000000192f2dd in ha_innobase::commit_inplace_alter_table (this=0x7fe3b400ff70, altered_table=0x7fe3b402aae0, ha_alter_info=0x7fe43020c920, commit=true) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/storage/innobase/handler/handler0alter.cc:6859 #13 0x0000000000fb74ed in handler::ha_commit_inplace_alter_table (this=0x7fe3b400ff70, altered_table=0x7fe3b402aae0, ha_alter_info=0x7fe43020c920, commit=true) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/sql/handler.cc:4457 #14 0x000000000164f66c in mysql_inplace_alter_table (thd=0x7fe3b4000bb0, table_list=0x7fe3b4005cb8, table=0x7fe3b402a170, altered_table=0x7fe3b402aae0, ha_alter_info=0x7fe43020c920, inplace_supported=HA_ALTER_INPLACE_SHARED_LOCK_AFTER_PREPARE, target_mdl_request=0x7fe43020c360, alter_ctx=0x7fe43020ceb0) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/sql/sql_table.cc:6998 #15 0x0000000001653db5 in mysql_alter_table (thd=0x7fe3b4000bb0, new_db=0x7fe3b4006240 "test", new_name=0x7fe3b4005c80 "tab", create_info=0x7fe43020e2c0, table_list=0x7fe3b4005cb8, alter_info=0x7fe43020dd30) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/sql/sql_table.cc:8899 #16 0x00000000015c154c in mysql_execute_command (thd=0x7fe3b4000bb0) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/sql/sql_parse.cc:2968 #17 0x00000000015c78b1 in mysql_parse (thd=0x7fe3b4000bb0, parser_state=0x7fe43020ee50) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/sql/sql_parse.cc:5201 #18 0x00000000015bd46c in dispatch_command (thd=0x7fe3b4000bb0, com_data=0x7fe43020fe00, command=COM_QUERY) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/sql/sql_parse.cc:1280 #19 0x00000000015bc0bf in do_command (thd=0x7fe3b4000bb0) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/sql/sql_parse.cc:851 #20 0x00000000016e052e in handle_connection (arg=0x4d97130) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/sql/conn_handler/connection_handler_per_thread.cc:299 #21 0x0000000001ce1375 in pfs_spawn_thread (arg=0x4cb95d0) at /export/home3/pb2/build/sb_0-14765270-1426872165.51/mysqlcom-pro-5.7.8-rc/storage/perfschema/pfs.cc:2147 #22 0x00007fe43b9e1df3 in start_thread () from /lib64/libpthread.so.0 #23 0x00007fe43a6ad47d in clone () from /lib64/libc.so.6 (gdb)
[23 Mar 2015 8:48]
MySQL Verification Team
// 5.8.0 only debug build affected bin/mysql_install_db --basedir=/export/umesh/mysql-5.8.0 --datadir=/export/umesh/mysql-5.8.0/76437 -v bin/mysqld-debug --basedir=/export/umesh/mysql-5.8.0 --datadir=/export/umesh/mysql-5.8.0/76437 --core-file --socket=/tmp/mysql_ushastry.sock --port=15000 --log-error=/export/umesh/mysql-5.8.0/76437/log.err 2>&1 & - build commit: b48798db34fbcaf5dbb5c8ae7ef738afeb60eccc date: 2015-03-20 14:52:33 +0100 build-date: 2015-03-20 17:03:10 +0100 short: b48798d branch: mysql-trunk MySQL source 5.8.0 (gdb) bt #0 0x00007fce8c75e771 in pthread_kill () from /lib64/libpthread.so.0 #1 0x00000000018b3108 in my_write_core (sig=6) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/mysys/stacktrace.c:247 #2 0x0000000000f3d9fb in handle_fatal_signal (sig=6) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/sql/signal_handler.cc:221 #3 <signal handler called> #4 0x00007fce8b3645c9 in raise () from /lib64/libc.so.6 #5 0x00007fce8b365cd8 in abort () from /lib64/libc.so.6 #6 0x0000000001af2303 in ut_dbg_assertion_failed (expr=0x228b31f "!dict_index_is_spatial(index)", file=0x228a8d0 "/export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/storage/innobase/btr/btr0cur.cc", line=2573) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/storage/innobase/ut/ut0dbg.cc:67 #7 0x0000000001b21e07 in btr_cur_open_at_rnd_pos_func (index=0x7fce0803ab48, latch_mode=1, cursor=0x7fce80f826b0, file=0x228a8d0 "/export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/storage/innobase/btr/btr0cur.cc", line=6004, mtr=0x7fce80f82740) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/storage/innobase/btr/btr0cur.cc:2573 #8 0x0000000001b299f6 in btr_estimate_number_of_different_key_vals (index=0x7fce0803ab48) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/storage/innobase/btr/btr0cur.cc:6004 #9 0x0000000001bb7da6 in dict_stats_update_transient_for_index (index=0x7fce0803ab48) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/storage/innobase/dict/dict0stats.cc:859 #10 0x0000000001bbbec3 in dict_stats_update_for_index (index=0x7fce0803ab48) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/storage/innobase/dict/dict0stats.cc:3032 #11 0x000000000193b8c1 in alter_stats_norebuild (ha_alter_info=0x7fce80f84920, ctx=0x7fce08036a70, altered_table=0x7fce0802b210, table_name=0x7fce0804f0dd "tab", thd=0x7fce08000bb0) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/storage/innobase/handler/handler0alter.cc:6170 #12 0x000000000193d861 in ha_innobase::commit_inplace_alter_table (this=0x7fce08010b10, altered_table=0x7fce0802b210, ha_alter_info=0x7fce80f84920, commit=true) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/storage/innobase/handler/handler0alter.cc:6859 #13 0x0000000000fac54b in handler::ha_commit_inplace_alter_table (this=0x7fce08010b10, altered_table=0x7fce0802b210, ha_alter_info=0x7fce80f84920, commit=true) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/sql/handler.cc:4467 #14 0x0000000001638574 in mysql_inplace_alter_table (thd=0x7fce08000bb0, table_list=0x7fce08005cb8, table=0x7fce0800ddd0, altered_table=0x7fce0802b210, ha_alter_info=0x7fce80f84920, inplace_supported=HA_ALTER_INPLACE_SHARED_LOCK_AFTER_PREPARE, target_mdl_request=0x7fce80f84360, alter_ctx=0x7fce80f84eb0) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/sql/sql_table.cc:7002 #15 0x000000000163ccb6 in mysql_alter_table (thd=0x7fce08000bb0, new_db=0x7fce08006240 "test", new_name=0x7fce08005c80 "tab", create_info=0x7fce80f862c0, table_list=0x7fce08005cb8, alter_info=0x7fce80f85d30) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/sql/sql_table.cc:8903 #16 0x00000000015aa78f in mysql_execute_command (thd=0x7fce08000bb0) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/sql/sql_parse.cc:2938 #17 0x00000000015b0a1d in mysql_parse (thd=0x7fce08000bb0, parser_state=0x7fce80f86e50) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/sql/sql_parse.cc:5158 #18 0x00000000015a66e6 in dispatch_command (thd=0x7fce08000bb0, com_data=0x7fce80f87e00, command=COM_QUERY) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/sql/sql_parse.cc:1245 #19 0x00000000015a5335 in do_command (thd=0x7fce08000bb0) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/sql/sql_parse.cc:814 #20 0x00000000016ca436 in handle_connection (arg=0x47732d0) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/sql/conn_handler/connection_handler_per_thread.cc:300 #21 0x0000000001c59c8d in pfs_spawn_thread (arg=0x4695770) at /export/home3/pb2/build/sb_0-14764689-1426868485.86/mysqlcom-pro-5.8.0-m17/storage/perfschema/pfs.cc:2147 #22 0x00007fce8c759df3 in start_thread () from /lib64/libpthread.so.0 #23 0x00007fce8b42547d in clone () from /lib64/libc.so.6 (gdb)
[9 Apr 2015 6:07]
Allen Lai
Posted by developer: The assertion is in function btr_cur_open_at_rnd_pos_func. Since mysql.innodb_table_stats is dropped, so, server call this function to get transint stats instead. We should return false when index is spatial index.
[9 Apr 2015 20:08]
Daniel Price
Posted by developer: Fixed as of the upcoming 5.7.8, 5.8.0 releases, and here's the changelog entry: In debug builds, attempting to create a spatial index after dropping the "mysql.innodb_table_stats" table raised an assertion in the "btr_cur_open_at_rnd_pos_func" function. Thank you for the bug report.
[18 Jun 2016 21:25]
Omer Barnir
Posted by developer: Reported version value updated to reflect release name change from 5.8 to 8.0