Bug #115823 When the select .. from .. where xx < .. order by xx asc limit .., .. command
Submitted: 13 Aug 3:03 Modified: 13 Aug 14:51
Reporter: han wang Email Updates:
Status: Can't repeat Impact on me:
None 
Category:MySQL Server Severity:S3 (Non-critical)
Version:8.0.28 OS:Any
Assigned to: CPU Architecture:Any

[13 Aug 3:03] han wang
Description:
22:20:44 UTC - mysqld got signal 11 ;
Most likely, you have hit a bug, but this error can also be caused by malfunctioning hardware.
Thread pointer: 0x7f123ed07000
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 7f126d1ec460 thread_stack 0x100000
/usr/local/engine/bin/mysqld(my_print_stacktrace(unsigned char const*, unsigned long)+0x3d) [0x55584c5a30ed]
/usr/local/engine/bin/mysqld(print_fatal_signal(int)+0x314) [0x55584afe0c84]
/usr/local/engine/bin/mysqld(handle_fatal_signal+0x84) [0x55584afe0d14]
/lib64/libpthread.so.0(+0x13280) [0x7f2ac62f5280]
/lib64/libpthread.so.0(pthread_self+0) [0x7f2ac62ec340]
/usr/local/engine/bin/mysqld(Buf_fetch<Buf_fetch_normal>::single_page()+0x51a) [0x55584ad2ba5a]
/usr/local/engine/bin/mysqld(+0x10391eb) [0x55584ab6c1eb]
/usr/local/engine/bin/mysqld(btr_cur_search_to_nth_level(dict_index_t*, unsigned long, dtuple_t const*, page_cur_mode_t, unsigned long, btr_cur_t*, unsigned long, char const*, unsigned long, mtr_t*)+0x9e0) [0x55584ad1c1a0]
/usr/local/engine/bin/mysqld(btr_pcur_t::open_no_init(dict_index_t*, dtuple_t const*, page_cur_mode_t, unsigned long, unsigned long, mtr_t*, char const*, unsigned long)+0x4f) [0x55584ad0933f]
/usr/local/engine/bin/mysqld(Row_sel_get_clust_rec_for_mysql::operator()(row_prebuilt_t*, dict_index_t*, unsigned char const*, que_thr_t*, unsigned char const**, unsigned long**, mem_block_info_t**, dtuple_t const**, mtr_t*, lob::undo_vers_t*)+0xe3) [0x55584c81e793]
/usr/local/engine/bin/mysqld(row_search_mvcc(unsigned char*, page_cur_mode_t, row_prebuilt_t*, unsigned long, unsigned long)+0x280a) [0x55584ad04fda]
/usr/local/engine/bin/mysqld(ha_innobase::index_next(unsigned char*)+0x93) [0x55584accac13]
/usr/local/engine/bin/mysqld(handler::read_range_next()+0x60) [0x55584ac5a990]
/usr/local/engine/bin/mysqld(ha_innobase::read_range_next()+0x1c) [0x55584acccc6c]
/usr/local/engine/bin/mysqld(DsMrr_impl::dsmrr_next(char**)+0x50) [0x55584ac5a300]
/usr/local/engine/bin/mysqld(handler::ha_multi_range_read_next(char**)+0x28) [0x55584ac5a248]
/usr/local/engine/bin/mysqld(IndexRangeScanIterator::Read()+0x42) [0x55584ac7b4e2]
/usr/local/engine/bin/mysqld(LimitOffsetIterator::Read()+0x57) [0x55584b40b077]
/usr/local/engine/bin/mysqld(Query_expression::ExecuteIteratorQuery(THD*)+0x284) [0x55584ac18474]
/usr/local/engine/bin/mysqld(Query_expression::execute(THD*)+0x26) [0x55584ac181c6]
/usr/local/engine/bin/mysqld(Sql_cmd_dml::execute(THD*)+0x471) [0x55584ac08d91]
/usr/local/engine/bin/mysqld(mysql_execute_command(THD*, bool)+0x463) [0x55584abf6e43]
/usr/local/engine/bin/mysqld(dispatch_sql_command(THD*, Parser_state*)+0x4d0) [0x55584abfe1b0]
/usr/local/engine/bin/mysqld(dispatch_command(THD*, COM_DATA const*, enum_server_command)+0x558) [0x55584abff578]
/usr/local/engine/bin/mysqld(do_command(THD*)+0x11b) [0x55584abfee7b]
/usr/local/engine/bin/mysqld(threadpool_process_request(THD*)+0x98) [0x55584ad69488]
/usr/local/engine/bin/mysqld(+0x1236f89) [0x55584ad69f89]
/usr/local/engine/bin/mysqld(+0x30152c6) [0x55584cb482c6]
/lib64/libpthread.so.0(+0x8f4b) [0x7f2ac62eaf4b]
/lib64/libc.so.6(clone+0x3f) [0x7f2ac5dcc7ef]

Trying to get some variables.
Some pointers may be invalid and cause the dump to abort.
Query (7f1131fca938): select XX from XX where XX<='XX' order by ts asc limit xxx,xxx
Connection ID (thread ID): XX
Status: NOT_KILLED

How to repeat:
22:20:44 UTC - mysqld got signal 11 ;
Most likely, you have hit a bug, but this error can also be caused by malfunctioning hardware.
Thread pointer: 0x7f123ed07000
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 7f126d1ec460 thread_stack 0x100000
/usr/local/engine/bin/mysqld(my_print_stacktrace(unsigned char const*, unsigned long)+0x3d) [0x55584c5a30ed]
/usr/local/engine/bin/mysqld(print_fatal_signal(int)+0x314) [0x55584afe0c84]
/usr/local/engine/bin/mysqld(handle_fatal_signal+0x84) [0x55584afe0d14]
/lib64/libpthread.so.0(+0x13280) [0x7f2ac62f5280]
/lib64/libpthread.so.0(pthread_self+0) [0x7f2ac62ec340]
/usr/local/engine/bin/mysqld(Buf_fetch<Buf_fetch_normal>::single_page()+0x51a) [0x55584ad2ba5a]
/usr/local/engine/bin/mysqld(+0x10391eb) [0x55584ab6c1eb]
/usr/local/engine/bin/mysqld(btr_cur_search_to_nth_level(dict_index_t*, unsigned long, dtuple_t const*, page_cur_mode_t, unsigned long, btr_cur_t*, unsigned long, char const*, unsigned long, mtr_t*)+0x9e0) [0x55584ad1c1a0]
/usr/local/engine/bin/mysqld(btr_pcur_t::open_no_init(dict_index_t*, dtuple_t const*, page_cur_mode_t, unsigned long, unsigned long, mtr_t*, char const*, unsigned long)+0x4f) [0x55584ad0933f]
/usr/local/engine/bin/mysqld(Row_sel_get_clust_rec_for_mysql::operator()(row_prebuilt_t*, dict_index_t*, unsigned char const*, que_thr_t*, unsigned char const**, unsigned long**, mem_block_info_t**, dtuple_t const**, mtr_t*, lob::undo_vers_t*)+0xe3) [0x55584c81e793]
/usr/local/engine/bin/mysqld(row_search_mvcc(unsigned char*, page_cur_mode_t, row_prebuilt_t*, unsigned long, unsigned long)+0x280a) [0x55584ad04fda]
/usr/local/engine/bin/mysqld(ha_innobase::index_next(unsigned char*)+0x93) [0x55584accac13]
/usr/local/engine/bin/mysqld(handler::read_range_next()+0x60) [0x55584ac5a990]
/usr/local/engine/bin/mysqld(ha_innobase::read_range_next()+0x1c) [0x55584acccc6c]
/usr/local/engine/bin/mysqld(DsMrr_impl::dsmrr_next(char**)+0x50) [0x55584ac5a300]
/usr/local/engine/bin/mysqld(handler::ha_multi_range_read_next(char**)+0x28) [0x55584ac5a248]
/usr/local/engine/bin/mysqld(IndexRangeScanIterator::Read()+0x42) [0x55584ac7b4e2]
/usr/local/engine/bin/mysqld(LimitOffsetIterator::Read()+0x57) [0x55584b40b077]
/usr/local/engine/bin/mysqld(Query_expression::ExecuteIteratorQuery(THD*)+0x284) [0x55584ac18474]
/usr/local/engine/bin/mysqld(Query_expression::execute(THD*)+0x26) [0x55584ac181c6]
/usr/local/engine/bin/mysqld(Sql_cmd_dml::execute(THD*)+0x471) [0x55584ac08d91]
/usr/local/engine/bin/mysqld(mysql_execute_command(THD*, bool)+0x463) [0x55584abf6e43]
/usr/local/engine/bin/mysqld(dispatch_sql_command(THD*, Parser_state*)+0x4d0) [0x55584abfe1b0]
/usr/local/engine/bin/mysqld(dispatch_command(THD*, COM_DATA const*, enum_server_command)+0x558) [0x55584abff578]
/usr/local/engine/bin/mysqld(do_command(THD*)+0x11b) [0x55584abfee7b]
/usr/local/engine/bin/mysqld(threadpool_process_request(THD*)+0x98) [0x55584ad69488]
/usr/local/engine/bin/mysqld(+0x1236f89) [0x55584ad69f89]
/usr/local/engine/bin/mysqld(+0x30152c6) [0x55584cb482c6]
/lib64/libpthread.so.0(+0x8f4b) [0x7f2ac62eaf4b]
/lib64/libc.so.6(clone+0x3f) [0x7f2ac5dcc7ef]

Trying to get some variables.
Some pointers may be invalid and cause the dump to abort.
Query (7f1131fca938): select XX from XX where XX<='XX' order by ts asc limit xxx,xxx
Connection ID (thread ID): XX
Status: NOT_KILLED
[13 Aug 9:25] MySQL Verification Team
Hi Mr. wang,

Thank you for your bug report.

We have received couple of reports with stacktraces like yours, but all of those are in the old releases of 8.0 and all of them are fixed.

You have not stated the version / release, nor have you sent a repeatable test case.

Hence, we can not proceed with processing your bug report.
[13 Aug 14:51] han wang
When the select .. from .. where xx < .. order by xx asc limit .., .. command is executed, there is a low probability that mysqld crashes.

Has this problem been fixed in the latest version?
[13 Aug 14:59] MySQL Verification Team
HI Mr. Wang,

It looks like it has been fixed, judging by closed bug reports.

However, if you would send us that table 'XX', we can check that out .....

Use the "Files" tab to upload a dump of that table.