[MDEV-13395] mysqld crash during executing Window Functions first_value/last_value Created: 2017-07-28  Updated: 2017-07-31  Resolved: 2017-07-31

Status: Closed
Project: MariaDB Server
Component/s: Optimizer - Window functions
Affects Version/s: 10.3.0
Fix Version/s: 10.2.6, 10.3.1

Type: Bug Priority: Major
Reporter: Stefan Böther Assignee: Unassigned
Resolution: Fixed Votes: 0
Labels: None
Environment:

docker container
Docker Image mariadb:10.3


Attachments: File scd-dv.sql    
Issue Links:
Relates
relates to MDEV-11990 Wrong result for query with window fu... Closed

 Description   

I testing window function's on 10.3 docker container of mariadb.
After add the 'order by' clause I crash the mysqld server.

I attached a SQL Script which I execute before.

170728  7:19:28 [ERROR] mysqld got signal 11 ;
This could be because you hit a bug. It is also possible that this binary
 
Server version: 10.3.0-MariaDB-10.3.0+maria~jessie
key_buffer_size=134217728
read_buffer_size=2097152
max_used_connections=19
max_threads=102
thread_count=10
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 759906 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
 
Thread pointer: 0x7fb854027e78
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 = 0x7fb8e2af7e38 thread_stack 0x49000
mysqld(my_print_stacktrace+0x2e)[0x556c554be18e]
mysqld(handle_fatal_signal+0x305)[0x556c54eec405]
/lib/x86_64-linux-gnu/libpthread.so.0(+0xf890)[0x7fb900eb1890]
mysqld(_Z8filesortP3THDP5TABLEP8FilesortP16Filesort_trackerP4JOINy+0x44e)[0x556c54eeaa2e]
mysqld(_Z17create_sort_indexP3THDP4JOINP13st_join_tableP8Filesort+0xd7)[0x556c54d66f07]
mysqld(_ZN13st_join_table10sort_tableEv+0x75)[0x556c54d67245]
mysqld(_Z21join_init_read_recordP13st_join_table+0x29)[0x556c54d672a9]
mysqld(_ZN7AGGR_OP8end_sendEv+0xfc)[0x556c54d79bcc]
mysqld(_Z24sub_select_postjoin_aggrP4JOINP13st_join_tableb+0x35)[0x556c54d79e55]
mysqld(_ZN4JOIN10exec_innerEv+0x904)[0x556c54d7a814]
mysqld(_ZN4JOIN4execEv+0x33)[0x556c54d7ac43]
mysqld(_Z12mysql_selectP3THDP10TABLE_LISTjR4ListI4ItemEPS4_jP8st_orderS9_S7_S9_yP13select_resultP18st_select_lex_unitP13st_select_lex+0xec)[0x556c54d7ad8c]
mysqld(_Z13handle_selectP3THDP3LEXP13select_resultm+0x139)[0x556c54d7b779]
mysqld(+0x4f30ee)[0x556c54d160ee]
mysqld(_Z21mysql_execute_commandP3THD+0x6276)[0x556c54d22f96]
mysqld(_Z11mysql_parseP3THDPcjP12Parser_statebb+0x351)[0x556c54d26481]
mysqld(_Z16dispatch_command19enum_server_commandP3THDPcjbb+0x2708)[0x556c54d29a48]
mysqld(_Z10do_commandP3THD+0x160)[0x556c54d2a330]
mysqld(_Z24do_handle_one_connectionP7CONNECT+0x232)[0x556c54dfc602]
mysqld(handle_one_connection+0x3d)[0x556c54dfc79d]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x8064)[0x7fb900eaa064]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x6d)[0x7fb8ff28c62d]
 
Trying to get some variables.
Some pointers may be invalid and cause the dump to abort.
Query (0x7fb854060e50): SELECT     hub.HUB_EMPLOYEE_SK AS EMPLOYEE_KEY,    hub.EMPLOYEE_ID,       first_value(DATE(sat.LOAD_DATE)) OVER (partition BY sat.hub_employee_sk, DATE(sat.load_date) order by
sat.load_date) AS LOAD_DATE,    last_value(sat.END_DATE) OVER (partition BY sat.hub_employee_sk, DATE(sat.load_date) order by sat.load_date) AS END_DATE,    last_value(sat.NAME) OVER (partition BY sat
.hub_employee_sk, DATE(sat.load_date) order by sat.load_date) AS NAME,    last_value(sat.EMAIL) OVER (partition BY sat.hub_employee_sk, DATE(sat.load_date) order by sat.load_date) AS EMAIL,    last_va
lue(sat.PHONE) OVER (partition BY sat.hub_employee_sk, DATE(sat.load_date) order by sat.load_date) AS PHONE  FROM     stefc.hub_employee hub  INNER JOIN stefc.sat_employee AS sat USING(HUB_EMPLOYEE_SK
)  ORDER BY hub.EMPLOYEE_ID limit 0,0
Connection ID (thread ID): 7369
Status: NOT_KILLED
 
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_c
ost_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,exte
nded_keys=on,exists_to_in=on,orderby_uses_equalities=on,condition_pushdown_for_derived=on



 Comments   
Comment by Elena Stepanova [ 2017-07-31 ]

Thanks for the report.
The problem was fixed in the scope of MDEV-11990. The fix was released with 10.2.6 and will be included into the next 10.3 (10.3.1).

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