[MDEV-24826] Query on users + information schema + perf schema crashes 10.3.27 Created: 2021-02-09  Updated: 2022-01-06  Resolved: 2022-01-06

Status: Closed
Project: MariaDB Server
Component/s: Server
Affects Version/s: 10.3.27
Fix Version/s: 10.3.28

Type: Bug Priority: Critical
Reporter: carlos tutte Assignee: Unassigned
Resolution: Duplicate Votes: 0
Labels: None

Issue Links:
Relates
relates to MDEV-24593 Signal 11 when group by primary key o... Closed

 Description   

Hi!

The following query crashes a freshly installed 10.3.27 server:

SELECT DISTINCT m_u.user, m_u.host
    FROM mysql.user m_u
    LEFT JOIN performance_schema.accounts ps_a
      ON m_u.user = ps_a.user AND ps_a.host = m_u.host
    LEFT JOIN information_schema.views is_v
      ON is_v.DEFINER = CONCAT(m_u.User, '@', m_u.Host) AND is_v.security_type = 'DEFINER'
    LEFT JOIN information_schema.routines is_r ON is_r.DEFINER = CONCAT(m_u.User, '@', m_u.Host) AND is_r.security_type = 'DEFINER'
    LEFT JOIN information_schema.events is_e ON is_e.definer = CONCAT(m_u.user, '@', m_u.host)
    LEFT JOIN information_schema.triggers is_t ON is_t.definer = CONCAT(m_u.user, '@', m_u.host)
    WHERE ps_a.user IS NULL
      AND is_v.definer IS NULL
      AND is_r.definer IS NULL
      AND is_e.definer IS NULL
      AND is_t.definer IS NULL
    ORDER BY m_u.user, m_u.host;

Stack trace is:

10209 17:35:12 [ERROR] 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.
 
To report this bug, see https://mariadb.com/kb/en/reporting-bugs
 
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.
 
Server version: 10.3.27-MariaDB
key_buffer_size=134217728
read_buffer_size=131072
max_used_connections=1
max_threads=153
thread_count=7
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 467424 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
 
Thread pointer: 0x7f04c80009a8
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 = 0x7f05204b2d30 thread_stack 0x49000
/usr/sbin/mysqld(my_print_stacktrace+0x2e)[0x55796dfc066e]
/usr/sbin/mysqld(handle_fatal_signal+0x30f)[0x55796da57e7f]
sigaction.c:0(__restore_rt)[0x7f053a6c5630]
/usr/sbin/mysqld(+0xbcc15b)[0x55796de7415b]
/usr/sbin/mysqld(_ZN10SQL_SELECT17test_quick_selectEP3THD6BitmapILj64EEyybbb+0x6dc)[0x55796db7926c]
/usr/sbin/mysqld(_ZN4JOIN14optimize_innerEv+0x202b)[0x55796d8d119b]
/usr/sbin/mysqld(_ZN4JOIN8optimizeEv+0x52)[0x55796d8d1b22]
/usr/sbin/mysqld(_Z12mysql_selectP3THDP10TABLE_LISTjR4ListI4ItemEPS4_jP8st_orderS9_S7_S9_yP13select_resultP18st_select_lex_unitP13st_select_lex+0x94)[0x55796d8d32e4]
/usr/sbin/mysqld(_Z13handle_selectP3THDP3LEXP13select_resultm+0x1dc)[0x55796d8d3e8c]
/usr/sbin/mysqld(+0x4dc0f9)[0x55796d7840f9]
/usr/sbin/mysqld(_Z21mysql_execute_commandP3THD+0x21bc)[0x55796d879c6c]
/usr/sbin/mysqld(_Z11mysql_parseP3THDPcjP12Parser_statebb+0x1fb)[0x55796d8806ab]
/usr/sbin/mysqld(_Z16dispatch_command19enum_server_commandP3THDPcjbb+0xf76)[0x55796d881f26]
/usr/sbin/mysqld(_Z10do_commandP3THD+0x11b)[0x55796d883adb]
/usr/sbin/mysqld(_Z24do_handle_one_connectionP7CONNECT+0x1d6)[0x55796d959706]
/usr/sbin/mysqld(handle_one_connection+0x3d)[0x55796d95981d]
pthread_create.c:0(start_thread)[0x7f053a6bdea5]
/lib64/libc.so.6(clone+0x6d)[0x7f0538a5d9fd]
 
Trying to get some variables.
Some pointers may be invalid and cause the dump to abort.
Query (0x7f04c800f3b0): SELECT DISTINCT m_u.user, m_u.host
    FROM mysql.user m_u
    LEFT JOIN performance_schema.accounts ps_a
      ON m_u.user = ps_a.user AND ps_a.host = m_u.host
    LEFT JOIN information_schema.views is_v
      ON is_v.DEFINER = CONCAT(m_u.User, '@', m_u.Host) AND is_v.security_type = 'DEFINER'
    LEFT JOIN information_schema.routines is_r ON is_r.DEFINER = CONCAT(m_u.User, '@', m_u.Host) AND is_r.security_type = 'DEFINER'
    LEFT JOIN information_schema.events is_e ON is_e.definer = CONCAT(m_u.user, '@', m_u.host)
    LEFT JOIN information_schema.triggers is_t ON is_t.definer = CONCAT(m_u.user, '@', m_u.host)
    WHERE ps_a.user IS NULL
      AND is_v.definer IS NULL
      AND is_r.definer IS NULL
      AND is_e.definer IS NULL
      AND is_t.definer IS NULL
    ORDER BY m_u.user, m_u.host
 
Connection ID (thread ID): 9
Status: NOT_KILLED



 Comments   
Comment by Daniel Black [ 2021-02-10 ]

Hi, I'm able reproduce this.

I've also tested the 10.3.28 release being prepared and I can no longer reproduce the crash.

When 10.3.28 comes out in the next few days can you please confirm that this is fixed for you and I'll close this bug.

Comment by Sergei Golubchik [ 2021-02-10 ]

likely a duplicate of MDEV-24593

Comment by Daniel Black [ 2021-03-02 ]

ctutte does 10.3.28 correct this issue for you?

Generated at Thu Feb 08 09:32:58 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.