stoneatom / stonedb

StoneDB is an Open-Source MySQL HTAP and MySQL-Native DataBase for OLTP, Real-Time Analytics, a counterpart of MySQLHeatWave. (https://stonedb.io)
https://stonedb.io/
GNU General Public License v2.0
865 stars 141 forks source link

bug: stonedb crashes when executing "partition_deprecation.test" test case #212

Closed lylth closed 2 years ago

lylth commented 2 years ago

Describe the problem

stonedb crashes when executing "partition_deprecation.test test" case

Expected behavior

No response

How To Reproduce


./mtr partition_deprecation.test test

### Environment

centos7.5 
stonedb5.7

### Are you interested in submitting a PR to solve the problem?

- [X] Yes, I will!
lylth commented 2 years ago

It crashes when executing this sql statement


CREATE TABLE t1 (a INT) ENGINE = InnoDB
PARTITION BY RANGE (a)
(
PARTITION pNeg VALUES LESS THAN (0),
PARTITION pPosNull VALUES LESS THAN MAXVALUE
);
SELECT TABLE_SCHEMA, TABLE_NAME FROM INFORMATION_SCHEMA.TABLES
WHERE CREATE_OPTIONS LIKE '%partitioned%';
lylth commented 2 years ago

The stack information is as follows:


#0  0x00007fa37cb87aa1 in pthread_kill () from /lib64/libpthread.so.0
#1  0x00000000027a8542 in my_write_core (sig=11) at /opt/litaihong/stonedb/mysys/stacktrace.c:261
#2  0x0000000001d7b7aa in handle_fatal_signal (sig=11) at /opt/litaihong/stonedb/sql/signal_handler.cc:227
#3  <signal handler called>
#4  0x00007fa37b001f4f in __strlen_sse42 () from /lib64/libc.so.6
#5  0x00000000024d5ce3 in get_schema_tables_record (thd=0x7fa068121ce0, tables=0x7fa068006cb0, table=0x7fa06800a590, res=false,
    db_name=0x7fa0680d01e0, table_name=0x7fa06800c378) at /opt/litaihong/stonedb/sql/sql_show.cc:5226
#6  0x00000000024d2ac7 in fill_schema_table_by_open (thd=0x7fa068121ce0, mem_root=0x7fa36e2cb520, is_show_fields_or_keys=false,
    table=0x7fa06800a590, schema_table=0x47d8b00 <schema_tables+1664>, orig_db_name=0x7fa0680d01e0, orig_table_name=0x7fa06800c378,
    open_tables_state_backup=0x7fa36e2cb5a0, can_deadlock=false) at /opt/litaihong/stonedb/sql/sql_show.cc:4081
#7  0x00000000024d431e in get_all_tables (thd=0x7fa068121ce0, tables=0x7fa068013c88, cond=0x7fa068013718)
    at /opt/litaihong/stonedb/sql/sql_show.cc:4813
#8  0x00000000024e27ea in do_fill_table (thd=0x7fa068121ce0, table_list=0x7fa068013c88, qep_tab=0x7fa06800c1f0)
    at /opt/litaihong/stonedb/sql/sql_show.cc:8247
#9  0x00000000024e2ced in get_schema_tables_result (join=0x7fa0680cfd30, executed_place=PROCESSED_BY_JOIN_EXEC)
    at /opt/litaihong/stonedb/sql/sql_show.cc:8378
#10 0x00000000024bb060 in JOIN::prepare_result (this=0x7fa0680cfd30) at /opt/litaihong/stonedb/sql/sql_select.cc:920
#11 0x0000000002421025 in JOIN::exec (this=0x7fa0680cfd30) at /opt/litaihong/stonedb/sql/sql_executor.cc:131
#12 0x00000000024b9c89 in handle_query (thd=0x7fa068121ce0, lex=0x7fa068124008, result=0x7fa0680cfa88, added_options=0,
    removed_options=0, optimize_after_bh=0, free_join_from_bh=0) at /opt/litaihong/stonedb/sql/sql_select.cc:195
#13 0x000000000246feb4 in execute_sqlcom_select (thd=0x7fa068121ce0, all_tables=0x7fa068013c88)
    at /opt/litaihong/stonedb/sql/sql_parse.cc:5184
#14 0x00000000024691fe in mysql_execute_command (thd=0x7fa068121ce0, first_level=true)
    at /opt/litaihong/stonedb/sql/sql_parse.cc:2831
#15 0x0000000002470e43 in mysql_parse (thd=0x7fa068121ce0, parser_state=0x7fa36e2cceb0)
    at /opt/litaihong/stonedb/sql/sql_parse.cc:5621
#16 0x00000000024660db in dispatch_command (thd=0x7fa068121ce0, com_data=0x7fa36e2cd650, command=COM_QUERY)
    at /opt/litaihong/stonedb/sql/sql_parse.cc:1495
#17 0x0000000002465007 in do_command (thd=0x7fa068121ce0) at /opt/litaihong/stonedb/sql/sql_parse.cc:1034
#18 0x0000000002597c23 in handle_connection (arg=0x7b890e0)
    at /opt/litaihong/stonedb/sql/conn_handler/connection_handler_per_thread.cc:313
#19 0x0000000002c7b854 in pfs_spawn_thread (arg=0x7b64df0) at /opt/litaihong/stonedb/storage/perfschema/pfs.cc:2197
#20 0x00007fa37cb82ea5 in start_thread () from /lib64/libpthread.so.0
#21 0x00007fa37afb9b0d in clone () from /lib64/libc.so.6