Description:
This problem exists on 3 servers, one with Redhat 7.2 and two with Redhat 8. One with 4.0.16-Max-log, another with 4.0.16-Max-log and another with 4.0.20-Max-log mysql databases. The crashes are cause by a select query.
This is a dumb (part of it):
mysqld got signal 11;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
We will try our best to scrape up some info that will hopefully help diagnose
the problem, but since we have already crashed, something is definitely wrong
and this may fail.
key_buffer_size=134217728
read_buffer_size=67104768
max_used_connections=0
max_connections=600
threads_connected=1
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_connections = 4159131 K
bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
thd=0x88047a8
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...
Cannot determine thread, fp=0x50b38e08, backtrace may not be correct.
Stack range sanity check OK, backtrace follows:
0x80d99b4
0x4003e8d5
0x8128128
0x8127e3b
0x8127510
0x8127b9e
0x81268a6
0x8125b3d
0x8125a6d
0x81256fb
0x80fed15
0x80ff6ed
0x80fd8b9
0x80fd066
0x80e45da
0x80e81f5
0x80e3753
0x80e319e
0x80e298e
0x4003bb9c
0x401aa1ea
New value of fp=(nil) failed sanity check, terminating stack trace!
Please read http://www.mysql.com/doc/en/Using_stack_trace.html and follow instructions on how to resolve the stack trace. Resolved
stack trace is much more helpful in diagnosing the problem, so please do
resolve it
Trying to get some variables.
Some pointers may be invalid and cause the dump to abort...
thd->query at 0x883a938 = SELECT SQL_CALC_FOUND_ROWS SQL_CACHE DID FROM Feed WHERE ((GeoLatitude>=2159995 AND GeoLatitude<=2161445 AND GeoLongitude>=1001120 AND GeoLongitude<=1003040) OR (GeoLatitude>=2158835 AND GeoLatitude<=2160285 AND GeoLongitude>=998980 AND GeoLongitude<=1000900) OR (GeoLatitude>=2159985 AND GeoLatitude<=2161435 AND GeoLongitude>=1003390 AND GeoLongitude<=1005310)) order by DisplayWeight desc, LastModified desc limit 100
thd->thread_id=3
The manual page at http://www.mysql.com/doc/en/Crashing.html contains
information that should help you find out what is causing the crash.
Number of processes running now: 0
040720 07:09:05 mysqld restarted
This was traced to the following (resolve_stack_dump -s /usr/lib/mysql/mysqld.sym -n mysqld.stack | c++filt):
0x80d99b4 read_sep_field(THD *, st_copy_info &, st_table *, List<Item> &, READ_INFO &, String &) + 420
0x4003e8d5 _end + 935065305
0x8128128 ibuf_delete_rec + 2104
0x8127e3b ibuf_delete_rec + 1355
0x8127510 ibuf_insert_to_index_page + 1888
0x8127b9e ibuf_delete_rec + 686
0x81268a6 ibuf_insert_low + 5974
0x8125b3d ibuf_insert_low + 2541
0x8125a6d ibuf_insert_low + 2333
0x81256fb ibuf_insert_low + 1451
0x80fed15 dict_boot + 3269
0x80ff6ed dict_create_sys_columns_tuple + 765
0x80fd8b9 innobase_shutdown_for_mysql + 89
0x80fd066 innobase_start_or_create_for_mysql + 1638
0x80e45da analyse::change_columns(List<Item> &) + 58
0x80e81f5 start_slave_threads(bool, bool, st_master_info *, char const *, char const *, int) + 37
0x80e3753 field_str::get_opt_type(String *, unsigned long) + 179
0x80e319e analyse::end_of_records(void) + 638
0x80e298e field_real::add(void) + 414
0x4003bb9c _end + 935053728
0x401aa1ea _end + 936554478
How to repeat:
SELECT DID FROM Feed WHERE ((GeoLatitude>=2159995 AND GeoLatitude<=2161445 AND GeoLongitude>=1001120 AND GeoLongitude<=1003040) OR (GeoLatitude>=2158835 AND GeoLatitude<=2160285 AND GeoLongitude>=998980 AND GeoLongitude<=1000900) OR (GeoLatitude>=2159985 AND GeoLatitude<=2161435 AND GeoLongitude>=1003390 AND GeoLongitude<=1005310))