[MDEV-16585] 10.0.35 - crash Created: 2018-06-26  Updated: 2018-07-31  Resolved: 2018-07-31

Status: Closed
Project: MariaDB Server
Component/s: Optimizer
Affects Version/s: 10.0.35, 10.0.35-galera
Fix Version/s: N/A

Type: Bug Priority: Critical
Reporter: Lukasz Gorski Assignee: Unassigned
Resolution: Duplicate Votes: 0
Labels: need_feedback
Environment:

Debian GNU/Linux 8.11 (jessie)


Issue Links:
Duplicate
is duplicated by MDEV-16235 [10.0] Server crashes in my_utf8_uni ... Closed

 Description   

Freshly installed server with imported databases (dump & restore ~ 90GB) restarts several times a day.

Jun 26 08:36:32 mariadb4 mysqld: 180626  8:36:32 [ERROR] mysqld got
signal 11 ;
Jun 26 08:36:32 mariadb4 mysqld: This could be because you hit a bug.
It is also possible that this binary
Jun 26 08:36:32 mariadb4 mysqld: or one of the libraries it was linked
against is corrupt, improperly built,
Jun 26 08:36:32 mariadb4 mysqld: or misconfigured. This error can also
be caused by malfunctioning hardware.
Jun 26 08:36:32 mariadb4 mysqld:
Jun 26 08:36:32 mariadb4 mysqld: To report this bug, see
https://mariadb.com/kb/en/reporting-bugs
Jun 26 08:36:32 mariadb4 mysqld:
Jun 26 08:36:32 mariadb4 mysqld: We will try our best to scrape up
some info that will hopefully help
Jun 26 08:36:32 mariadb4 mysqld: diagnose the problem, but since we
have already crashed,
Jun 26 08:36:32 mariadb4 mysqld: something is definitely wrong and
this may fail.
Jun 26 08:36:32 mariadb4 mysqld:
Jun 26 08:36:32 mariadb4 mysqld: Server version: 10.0.35-MariaDB-1~jessie
Jun 26 08:36:32 mariadb4 mysqld: key_buffer_size=2147483648
Jun 26 08:36:32 mariadb4 mysqld: read_buffer_size=2097152
Jun 26 08:36:32 mariadb4 mysqld: max_used_connections=73
Jun 26 08:36:32 mariadb4 mysqld: max_threads=802
Jun 26 08:36:32 mariadb4 mysqld: thread_count=17
Jun 26 08:36:32 mariadb4 mysqld: It is possible that mysqld could use
up to
Jun 26 08:36:32 mariadb4 mysqld: key_buffer_size + (read_buffer_size +
sort_buffer_size)*max_threads = 7040547 K  bytes of memory
Jun 26 08:36:32 mariadb4 mysqld: Hope that's ok; if not, decrease some
variables in the equation.
Jun 26 08:36:32 mariadb4 mysqld:
Jun 26 08:36:32 mariadb4 mysqld: Thread pointer: 0x7feb4b5ce008
Jun 26 08:36:32 mariadb4 mysqld: Attempting backtrace. You can use the
following information to find out
Jun 26 08:36:32 mariadb4 mysqld: where mysqld died. If you see no
messages after this, something went
Jun 26 08:36:32 mariadb4 mysqld: terribly wrong...
Jun 26 08:36:32 mariadb4 mysqld: stack_bottom = 0x7fec2e53ae88
thread_stack 0x30000
Jun 26 08:36:32 mariadb4 mysqld:
/usr/sbin/mysqld(my_print_stacktrace+0x2e)[0xbc9e1e]
Jun 26 08:36:32 mariadb4 mysqld:
/usr/sbin/mysqld(handle_fatal_signal+0x3af)[0x73b1ef]
Jun 26 08:36:33 mariadb4 mysqld:
/lib/x86_64-linux-gnu/libpthread.so.0(+0xf890)[0x7fee2534b890]
Jun 26 08:36:33 mariadb4 mysqld:
/usr/sbin/mysqld(my_strtod+0x8a)[0xc01a8a]
Jun 26 08:36:33 mariadb4 mysqld:
/usr/sbin/mysqld(_ZN10Field_blob8val_realEv+0x60)[0x7203a0]
Jun 26 08:36:33 mariadb4 mysqld:
/usr/sbin/mysqld(_ZN14Arg_comparator12compare_realEv+0x1b)[0x76782b]
Jun 26 08:36:33 mariadb4 mysqld:
/usr/sbin/mysqld(_ZN12Item_func_ne7val_intEv+0x33)[0x76c0b3]
Jun 26 08:36:33 mariadb4 mysqld:
/usr/sbin/mysqld(_ZN4Item8val_boolEv+0xa4)[0x74bf24]
Jun 26 08:36:33 mariadb4 mysqld:
/usr/sbin/mysqld(_ZN12Item_cond_or7val_intEv+0x3a)[0x768f9a]
Jun 26 08:36:33 mariadb4 mysqld:
/usr/sbin/mysqld(_ZN4Item8val_boolEv+0xa4)[0x74bf24]
Jun 26 08:36:33 mariadb4 mysqld:
/usr/sbin/mysqld(_ZN13Item_cond_and7val_intEv+0x3a)[0x768f1a]
Jun 26 08:36:33 mariadb4 mysqld:
/usr/sbin/mysqld(_ZN4JOIN10exec_innerEv+0x219)[0x61ca79]
Jun 26 08:36:33 mariadb4 mysqld:
/usr/sbin/mysqld(_ZN4JOIN4execEv+0x11)[0x61f031]
Jun 26 08:36:33 mariadb4 mysqld:
/usr/sbin/mysqld(_Z13handle_selectP3THDP3LEXP13select_resultm+0x214)[0x61f314]
Jun 26 08:36:33 mariadb4 mysqld: /usr/sbin/mysqld[0x5bbe1b]
Jun 26 08:36:33 mariadb4 mysqld:
/usr/sbin/mysqld(_Z21mysql_execute_commandP3THD+0x4fc7)[0x5c7d77]
Jun 26 08:36:33 mariadb4 mysqld:
/usr/sbin/mysqld(_Z11mysql_parseP3THDPcjP12Parser_state+0x1ca)[0x5c9a2a]
Jun 26 08:36:33 mariadb4 mysqld:
/usr/sbin/mysqld(_Z16dispatch_command19enum_server_commandP3THDPcj+0x1547)[0x5cb507]
Jun 26 08:36:33 mariadb4 mysqld:
/usr/sbin/mysqld(_Z24do_handle_one_connectionP3THD+0x25b)[0x69badb]
Jun 26 08:36:33 mariadb4 mysqld:
/usr/sbin/mysqld(handle_one_connection+0x39)[0x69bb29]
Jun 26 08:36:33 mariadb4 mysqld:
/lib/x86_64-linux-gnu/libpthread.so.0(+0x8064)[0x7fee25344064]
Jun 26 08:36:34 mariadb4 mysqld:
/lib/x86_64-linux-gnu/libc.so.6(clone+0x6d)[0x7fee23bb762d]
Jun 26 08:36:34 mariadb4 mysqld:
Jun 26 08:36:34 mariadb4 mysqld: Trying to get some variables.
Jun 26 08:36:34 mariadb4 mysqld: Some pointers may be invalid and
cause the dump to abort.
Jun 26 08:36:34 mariadb4 mysqld: Query (0x7feb21b79020): is an invalid
pointer
Jun 26 08:36:34 mariadb4 mysqld: Connection ID (thread ID): 251200
Jun 26 08:36:34 mariadb4 mysqld: Status: NOT_KILLED
Jun 26 08:36:34 mariadb4 mysqld:
Jun 26 08:36:34 mariadb4 mysqld: Optimizer switch:
index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,index_merge_sort_intersection=off,engine_condition_pushdown=off,index_condition_pushdown=on,derived_merge=on,derived_with_keys=on,firstmatch=on,loosescan=on,materialization=on,in_to_exists=on,semijoin=on,partial_match_rowid_merge=on,partial_match_table_scan=on,subquery_cache=on,mrr=off,mrr_cost_based=off,mrr_sort_keys=off,outer_join_with_cache=on,semijoin_with_cache=on,join_cache_incremental=on,join_cache_hashed=on,join_cache_bka=on,optimize_join_buffer_size=off,table_elimination=on,extended_keys=on,exists_to_in=on
Jun 26 08:36:34 mariadb4 mysqld:
Jun 26 08:36:34 mariadb4 mysqld: The manual page at
http://dev.mysql.com/doc/mysql/en/crashing.html contains
Jun 26 08:36:34 mariadb4 mysqld: information that should help you find
out what is causing the crash.
Jun 26 08:36:34 mariadb4 mysqld:
Jun 26 08:36:34 mariadb4 mysqld: We think the query pointer is
invalid, but we will try to print it anyway.
Jun 26 08:36:34 mariadb4 mysqld: Query: SELECT 
text.id,texts0.texts_text AS title,texts1.texts_text AS
description,text.link,text.parent,text.config,text.subid AS
subid,text.url AS urlid,texts2.texts_text AS
url,text.date,text.datevis,text.row_order AS row_order,
relation_role.page2_id AS role, texts_role_title.texts_text AS
role_title, relation_team.page2_id AS team, var_type.value AS type,
texts_surname.texts_text AS surname, var_disablelink.value AS
disablelink,texts3.texts_text AS content FROM (text  LEFT OUTER JOIN
relation relation_role ON relation_role.page1_id=text.id AND
relation_role.name='role' LEFT OUTER JOIN text text_role ON
text_role.id = relation_role.page2_id LEFT OUTER JOIN texts
texts_role_title ON texts_role_title.text_id = text_role.title AND
texts_role_title.lang_id = 36 LEFT OUTER JOIN relation relation_team
ON relation_team.page1_id=text.id AND relation_team.name='team' LEFT
OUTER JOIN var var_type ON var_type.page_id=text.id AND
var_type.name='type' LEFT OUTER JOIN var var_surname ON
var_surname.page_id=text.id AND
Jun 26 08:36:34 mariadb4 mysqld:  var_surname.name='surname' LEFT
OUTER JOIN texts texts_surname ON texts_surname.text_id =
var_surname.value AND texts_surname.lang_id = 36 LEFT OUTER JOIN var
var_disablelink ON var_disablelink.page_id=text.id AND
var_disablelink.name='disablelink') LEFT OUTER JOIN texts texts0 ON
(texts0.text_id = text.title AND texts0.lang_id = 36) LEFT OUTER JOIN
texts texts1 ON (texts1.text_id = text.description AND texts1.lang_id
= 36) LEFT OUTER JOIN texts texts2 ON (texts2.text_id = text.url AND
texts2.lang_id = 36) LEFT OUTER JOIN texts texts3 ON (texts3.text_id =
text.content AND texts3.lang_id = 36) WHERE (text.parent=1730 AND
(var_disablelink.value IS NULL OR var_disablelink.value<>1) AND
text.visibility=1) HAVING @type<>1 AND (type NOT IN(1,3) AND
texts_surname.texts_text < @surname)  ORDER BY
IF(var_type.value=1,text_role.row_order,1) DESC, surname DESC, id DESC
Jun 26 08:36:34 mariadb4 mysqld:
Jun 26 08:36:35 mariadb4 mysqld_safe: Number of processes running now: 0
Jun 26 08:36:35 mariadb4 mysqld_safe: mysqld restarted



 Comments   
Comment by Elena Stepanova [ 2018-07-02 ]

I think it might be the same bug as MDEV-16235, specifically the second variation of it in the comments, with HAVING without LIMIT.
The bugfix is already in 10.0 tree, but not yet released in any versions.
lukasz, 10.0.36 release has been currently scheduled for 2018-07-20, so it will be a while. If the issue is urgent for you, you can try either intermediate packages (I'll give you the link) or build the server from sources. It would also be useful to make sure that the fix solves the problem for you as well. Otherwise, you can wait for the official release.

Generated at Thu Feb 08 08:30:01 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.