Bug #74859 Assertion `scale >= 0 && precision > 0 && scale <= precision' failed
Submitted: 14 Nov 2014 9:50 Modified: 2 Feb 2015 15:45
Reporter: Roel Van de Paar Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: DML Severity:S6 (Debug Builds)
Version:5.6.20, 5.6.23, 5.7.6 OS:Any
Assigned to: CPU Architecture:Any
Tags: debug

[14 Nov 2014 9:50] Roel Van de Paar
Description:
(gdb) bt
#0  0x00007fe78f49d771 in pthread_kill () from /lib64/libpthread.so.0
#1  0x0000000000a9035e in my_write_core (sig=6) at /bzr/mysql-5.6/mysys/stacktrace.c:422
#2  0x0000000000723688 in handle_fatal_signal (sig=6) at /bzr/mysql-5.6/sql/signal_handler.cc:230
#3  <signal handler called>
#4  0x00007fe78e2a95c9 in raise () from /lib64/libc.so.6
#5  0x00007fe78e2aacd8 in abort () from /lib64/libc.so.6
#6  0x00007fe78e2a2536 in __assert_fail_base () from /lib64/libc.so.6
#7  0x00007fe78e2a25e2 in __assert_fail () from /lib64/libc.so.6
#8  0x0000000000e4afe8 in decimal_bin_size (precision=0, scale=0) at /bzr/mysql-5.6/strings/decimal.c:1538
#9  0x00000000006e89ca in my_decimal_get_binary_size (precision=0, scale=0) at /bzr/mysql-5.6/sql/my_decimal.h:294
#10 0x00000000008f324b in Field_new_decimal::Field_new_decimal (this=0x7fe6e0012c90, len_arg=0, maybe_null_arg=true, name=0x7fe6e0006910 "MIN(GET_LOCK(0,0)/ '0b0' ^ (RAND()))", dec_arg=0 '\000', unsigned_arg=false) at /bzr/mysql-5.6/sql/field.cc:2568
#11 0x00000000008f33f6 in Field_new_decimal::create_from_item (item=0x7fe6e00067a8) at /bzr/mysql-5.6/sql/field.cc:2612
#12 0x00000000006de2ac in Item_sum::create_tmp_field (this=0x7fe6e00067a8, group=false, table=0x7fe6e0011e80) at /bzr/mysql-5.6/sql/item_sum.cc:566
#13 0x00000000006e0544 in Item_sum_hybrid::create_tmp_field (this=0x7fe6e00067a8, group=false, table=0x7fe6e0011e80) at /bzr/mysql-5.6/sql/item_sum.cc:1329
#14 0x000000000084b9ed in create_tmp_field (thd=0x29a10c0, table=0x7fe6e0011e80, item=0x7fe6e00067a8, type=Item::SUM_FUNC_ITEM, copy_func=0x7fe6f92979a8, from_field=0x7fe6e0012a90, default_field=0x7fe6e0012a80, group=false, modify_item=false, table_cant_handle_bit_fields=false, make_copy_field=false) at /bzr/mysql-5.6/sql/sql_tmp_table.cc:258
#15 0x000000000084d02e in create_tmp_table (thd=0x29a10c0, param=0x7fe6e00104c0, fields=..., group=0x0, distinct=false, save_sum_fields=true, select_options=2416188160, rows_limit=18446744073709551615, table_alias=0x7fe6e0006fb0 "a") at /bzr/mysql-5.6/sql/sql_tmp_table.cc:729
#16 0x000000000085a29a in select_union::create_result_table (this=0x7fe6e00104a0, thd_arg=0x29a10c0, column_types=0x7fe6e0006178, is_union_distinct=false, options=2416188160, table_alias=0x7fe6e0006fb0 "a", bit_fields_as_long=false, create_table=false) at /bzr/mysql-5.6/sql/sql_union.cc:163
#17 0x000000000079a300 in mysql_derived_prepare (thd=0x29a10c0, lex=0x29a3230, derived=0x7fe6e000fe90) at /bzr/mysql-5.6/sql/sql_derived.cc:213
#18 0x000000000079a0ea in mysql_handle_single_derived (lex=0x29a3230, derived=0x7fe6e000fe90, processor=0x79a0fc <mysql_derived_prepare(THD*, LEX*, TABLE_LIST*)>) at /bzr/mysql-5.6/sql/sql_derived.cc:115
#19 0x000000000079a014 in mysql_handle_derived (lex=0x29a3230, processor=0x79a0fc <mysql_derived_prepare(THD*, LEX*, TABLE_LIST*)>) at /bzr/mysql-5.6/sql/sql_derived.cc:77
#20 0x00000000007682ac in open_normal_and_derived_tables (thd=0x29a10c0, tables=0x7fe6e000fe90, flags=0) at /bzr/mysql-5.6/sql/sql_base.cc:5757
#21 0x00000000007d66a5 in execute_sqlcom_select (thd=0x29a10c0, all_tables=0x7fe6e000fe90) at /bzr/mysql-5.6/sql/sql_parse.cc:5076
#22 0x00000000007cf5cb in mysql_execute_command (thd=0x29a10c0) at /bzr/mysql-5.6/sql/sql_parse.cc:2649
#23 0x00000000007d8fa4 in mysql_parse (thd=0x29a10c0, rawbuf=0x7fe6e0004ff0 "select * from(SELECT MIN(GET_LOCK(0,0)/ '0b0' ^ (RAND()))) as a", length=63, parser_state=0x7fe6f9298eb0) at /bzr/mysql-5.6/sql/sql_parse.cc:6245
#24 0x00000000007cc557 in dispatch_command (command=COM_QUERY, thd=0x29a10c0, packet=0x86406e1 "select * from(SELECT MIN(GET_LOCK(0,0)/ '0b0' ^ (RAND()))) as a", packet_length=63) at /bzr/mysql-5.6/sql/sql_parse.cc:1332
#25 0x00000000007cb646 in do_command (thd=0x29a10c0) at /bzr/mysql-5.6/sql/sql_parse.cc:1034
#26 0x0000000000793a61 in do_handle_one_connection (thd_arg=0x29a10c0) at /bzr/mysql-5.6/sql/sql_connect.cc:982
#27 0x000000000079354a in handle_one_connection (arg=0x29a10c0) at /bzr/mysql-5.6/sql/sql_connect.cc:898
#28 0x0000000000ade888 in pfs_spawn_thread (arg=0x84fa250) at /bzr/mysql-5.6/storage/perfschema/pfs.cc:1860
#29 0x00007fe78f498df3 in start_thread () from /lib64/libpthread.so.0
#30 0x00007fe78e36a01d in clone () from /lib64/libc.so.6

Version: '5.6.20-debug'  socket: '/sda/mysql-5.6.20-linux-x86_64-debug/socket.sock'  port: 17011  MySQL Community Server (GPL)
mysqld: /bzr/mysql-5.6/strings/decimal.c:1538: decimal_bin_size: Assertion `scale >= 0 && precision > 0 && scale <= precision' failed.
09:48:08 UTC - mysqld got signal 6 ;

How to repeat:
DROP DATABASE test;CREATE DATABASE test;USE test;
SET @@session.div_precision_increment=0;
select * from(SELECT MIN(GET_LOCK(0,0)/ '0b0' ^ (RAND()))) as a;
[14 Nov 2014 11:28] MySQL Verification Team
Hello Roel,

Thank you for the bug report and test case.
Confirmed that 5.6.23/5.7.6 debug builds are affected.

Thanks,
Umesh
[14 Nov 2014 11:28] MySQL Verification Team
// 5.6.23 debug build

(gdb) bt
#0  __pthread_kill (threadid=<value optimized out>, signo=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:63
#1  0x0000000000affdab in my_write_core (sig=6) at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/mysys/stacktrace.c:422
#2  0x000000000077ebbc in handle_fatal_signal (sig=6) at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/signal_handler.cc:230
#3  <signal handler called>
#4  0x0000003deac32625 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#5  0x0000003deac33e05 in abort () at abort.c:92
#6  0x0000003deac2b74e in __assert_fail_base (fmt=<value optimized out>, assertion=0x11d1b78 "scale >= 0 && precision > 0 && scale <= precision",
    file=0x11d1900 "/export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/strings/decimal.c", line=<value optimized out>, function=<value optimized out>) at assert.c:96
#7  0x0000003deac2b810 in __assert_fail (assertion=0x11d1b78 "scale >= 0 && precision > 0 && scale <= precision",
    file=0x11d1900 "/export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/strings/decimal.c", line=1538, function=0x11d1da0 "decimal_bin_size") at assert.c:105
#8  0x0000000000ec6d19 in decimal_bin_size (precision=0, scale=0) at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/strings/decimal.c:1538
#9  0x0000000000742edc in my_decimal_get_binary_size (precision=0, scale=0) at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/my_decimal.h:294
#10 0x0000000000959864 in Field_new_decimal::Field_new_decimal (this=0x7f485400e120, len_arg=0, maybe_null_arg=true, name=0x7f48540086a0 "MIN(GET_LOCK(0,0)/ '0b0' ^ (RAND()))",
    dec_arg=0 '\000', unsigned_arg=false) at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/field.cc:2568
#11 0x0000000000959a1b in Field_new_decimal::create_from_item (item=0x7f4854008538) at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/field.cc:2612
#12 0x00000000007385b3 in Item_sum::create_tmp_field (this=0x7f4854008538, group=false, table=0x7f485401c980)
    at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/item_sum.cc:566
#13 0x000000000073a933 in Item_sum_hybrid::create_tmp_field (this=0x7f4854008538, group=false, table=0x7f485401c980)
    at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/item_sum.cc:1329
#14 0x00000000008acb42 in create_tmp_field (thd=0x3f6e010, table=0x7f485401c980, item=0x7f4854008538, type=Item::SUM_FUNC_ITEM, copy_func=0x7f4884aafc08, from_field=0x7f485401d590,
    default_field=0x7f485401d580, group=false, modify_item=false, table_cant_handle_bit_fields=false, make_copy_field=false)
    at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/sql_tmp_table.cc:258
#15 0x00000000008ae247 in create_tmp_table (thd=0x3f6e010, param=0x7f48540157b0, fields=..., group=0x0, distinct=false, save_sum_fields=true, select_options=2416188160,
    rows_limit=18446744073709551615, table_alias=0x7f4854008d40 "a") at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/sql_tmp_table.cc:729
#16 0x00000000008bb8d8 in select_union::create_result_table (this=0x7f4854015790, thd_arg=0x3f6e010, column_types=0x7f4854007f08, is_union_distinct=false, options=2416188160,
    table_alias=0x7f4854008d40 "a", bit_fields_as_long=false, create_table=false) at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/sql_union.cc:161
#17 0x00000000007f78ea in mysql_derived_prepare (thd=0x3f6e010, lex=0x3f70180, derived=0x7f4854015180)
    at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/sql_derived.cc:213
#18 0x00000000007f767d in mysql_handle_single_derived (lex=0x3f70180, derived=0x7f4854015180, processor=0x7f7694 <mysql_derived_prepare(THD*, LEX*, TABLE_LIST*)>)
    at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/sql_derived.cc:115
#19 0x00000000007f7598 in mysql_handle_derived (lex=0x3f70180, processor=0x7f7694 <mysql_derived_prepare(THD*, LEX*, TABLE_LIST*)>)
    at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/sql_derived.cc:77
#20 0x00000000007c500f in open_normal_and_derived_tables (thd=0x3f6e010, tables=0x7f4854015180, flags=0)
    at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/sql_base.cc:5775
#21 0x000000000083518f in execute_sqlcom_select (thd=0x3f6e010, all_tables=0x7f4854015180) at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/sql_parse.cc:5076
#22 0x000000000082dadc in mysql_execute_command (thd=0x3f6e010) at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/sql_parse.cc:2649
#23 0x0000000000837fa9 in mysql_parse (thd=0x3f6e010, rawbuf=0x7f4854006d80 "select * from(SELECT MIN(GET_LOCK(0,0)/ '0b0' ^ (RAND()))) as a", length=63, parser_state=0x7f4884ab1680)
    at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/sql_parse.cc:6357
#24 0x000000000082a92b in dispatch_command (command=COM_QUERY, thd=0x3f6e010, packet=0x409c841 "select * from(SELECT MIN(GET_LOCK(0,0)/ '0b0' ^ (RAND()))) as a", packet_length=63)
    at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/sql_parse.cc:1332
#25 0x0000000000829990 in do_command (thd=0x3f6e010) at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/sql_parse.cc:1034
#26 0x00000000007f0d8f in do_handle_one_connection (thd_arg=0x3f6e010) at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/sql_connect.cc:982
#27 0x00000000007f0860 in handle_one_connection (arg=0x3f6e010) at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/sql/sql_connect.cc:898
#28 0x0000000000e5f509 in pfs_spawn_thread (arg=0x405ff70) at /export/home/pb2/build/sb_0-13622626-1415294505.52/mysqlcom-pro-5.6.23/storage/perfschema/pfs.cc:1860
#29 0x0000003deb0079d1 in start_thread (arg=0x7f4884ab2700) at pthread_create.c:301
#30 0x0000003deace89dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

[root@cluster-repo mysql-advanced-5.6.23]# more docs/INFO_SRC
revision-id: michael.izioumtchenko@oracle.com-20141106152508-nntohvuco3v1rjjx
date: 2014-11-06 16:25:08 +0100
build-date: 2014-11-06 18:00:43 +0100
revno: 6243
branch-nick: daily-5.6
MySQL source 5.6.23
[14 Nov 2014 11:29] MySQL Verification Team
// 5.7.6 debug build

(gdb) bt
#0  __pthread_kill (threadid=<value optimized out>, signo=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:63
#1  0x0000000000f990a1 in my_write_core (sig=6) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/mysys/stacktrace.c:247
#2  0x000000000092d7cc in handle_fatal_signal (sig=6) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/signal_handler.cc:219
#3  <signal handler called>
#4  0x0000003deac32625 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#5  0x0000003deac33e05 in abort () at abort.c:92
#6  0x0000003deac2b74e in __assert_fail_base (fmt=<value optimized out>, assertion=0x1a85108 "scale >= 0 && precision > 0 && scale <= precision",
    file=0x1a84ea0 "/pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/strings/decimal.c", line=<value optimized out>, function=<value optimized out>) at assert.c:96
#7  0x0000003deac2b810 in __assert_fail (assertion=0x1a85108 "scale >= 0 && precision > 0 && scale <= precision",
    file=0x1a84ea0 "/pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/strings/decimal.c", line=1534, function=0x1a85360 "decimal_bin_size") at assert.c:105
#8  0x0000000001433a2f in decimal_bin_size (precision=0, scale=0) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/strings/decimal.c:1534
#9  0x0000000000976fe1 in my_decimal_get_binary_size (precision=0, scale=0) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/my_decimal.h:292
#10 0x000000000095dbc9 in Field_new_decimal::Field_new_decimal (this=0x7f46c80288e0, len_arg=0, maybe_null_arg=true, name=0x7f46c80073b0 "MIN(GET_LOCK(0,0)/ '0b0' ^ (RAND()))",
    dec_arg=0 '\000', unsigned_arg=false) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/field.cc:2673
#11 0x000000000095dd81 in Field_new_decimal::create_from_item (item=0x7f46c8006720) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/field.cc:2717
#12 0x0000000000bafe59 in Item_sum::create_tmp_field (this=0x7f46c8006720, group=false, table=0x7f46c8028cb0)
    at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/item_sum.cc:625
#13 0x0000000000bb2410 in Item_sum_hybrid::create_tmp_field (this=0x7f46c8006720, group=false, table=0x7f46c8028cb0)
    at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/item_sum.cc:1419
#14 0x0000000000d41e41 in create_tmp_field (thd=0x7f46c8000d30, table=0x7f46c8028cb0, item=0x7f46c8006720, type=Item::SUM_FUNC_ITEM, copy_func=0x7f46c80288b0, from_field=0x7f46c80299f0,
    default_field=0x7f46c80299b8, group=false, modify_item=false, table_cant_handle_bit_fields=false, make_copy_field=false)
    at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_tmp_table.cc:259
#15 0x0000000000d4395e in create_tmp_table (thd=0x7f46c8000d30, param=0x7f46c8025f08, fields=..., group=0x0, distinct=false, save_sum_fields=true, select_options=2416188160,
    rows_limit=18446744073709551615, table_alias=0x7f46c8006aa0 "a") at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_tmp_table.cc:839
#16 0x0000000000d4e1e4 in select_union::create_result_table (this=0x7f46c8025ee8, thd_arg=0x7f46c8000d30, column_types=0x7f46c8025110, is_union_distinct=false, options=2416188160,
    table_alias=0x7f46c8006aa0 "a", bit_fields_as_long=false, create_table=false) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_union.cc:275
#17 0x0000000000c6a81c in mysql_derived_prepare (thd=0x7f46c8000d30, lex=0x7f46c80030a0, derived=0x7f46c80258c8)
    at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_derived.cc:204
#18 0x0000000000c6a5af in mysql_handle_single_derived (lex=0x7f46c80030a0, derived=0x7f46c80258c8, processor=0xc6a5c6 <mysql_derived_prepare(THD*, LEX*, TABLE_LIST*)>)
    at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_derived.cc:106
#19 0x0000000000c6a512 in mysql_handle_derived (lex=0x7f46c80030a0, processor=0xc6a5c6 <mysql_derived_prepare(THD*, LEX*, TABLE_LIST*)>)
    at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_derived.cc:77
#20 0x0000000000c3a0b2 in open_normal_and_derived_tables (thd=0x7f46c8000d30, tables=0x7f46c80258c8, flags=0)
    at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_base.cc:6102
#21 0x0000000000cbbe3f in execute_sqlcom_select (thd=0x7f46c8000d30, all_tables=0x7f46c80258c8) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_parse.cc:4974
#22 0x0000000000cb4078 in mysql_execute_command (thd=0x7f46c8000d30) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_parse.cc:2487
#23 0x0000000000cbce6a in mysql_parse (thd=0x7f46c8000d30, parser_state=0x7f4704f29660) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_parse.cc:5397
#24 0x0000000000cb0f2c in dispatch_command (command=COM_QUERY, thd=0x7f46c8000d30, packet=0x7f46c8009a61 "select * from(SELECT MIN(GET_LOCK(0,0)/ '0b0' ^ (RAND()))) as a", packet_length=63)
    at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_parse.cc:1249
#25 0x0000000000cafbd4 in do_command (thd=0x7f46c8000d30) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/sql_parse.cc:833
#26 0x0000000000dbe89c in handle_connection (arg=0x4908160) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/sql/conn_handler/connection_handler_per_thread.cc:298
#27 0x000000000138347f in pfs_spawn_thread (arg=0x49a6db0) at /pb2/build/sb_0-13559856-1414670154.69/mysqlcom-pro-5.7.6-m16/storage/perfschema/pfs.cc:2137
#28 0x0000003deb0079d1 in start_thread (arg=0x7f4704f2a700) at pthread_create.c:301
#29 0x0000003deace89dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115
(gdb)

[root@cluster-repo mysql-advanced-5.7.6]# more docs/INFO_SRC
revision-id: knut.hatlen@oracle.com-20141030112312-87lkavvjlg9cqtvz
date: 2014-10-30 12:23:12 +0100
build-date: 2014-10-30 12:30:43 +0100
revno: 9156
branch-nick: daily-trunk-el6
MySQL source 5.7.6
[2 Feb 2015 15:45] Paul DuBois
Noted in 5.7.6 changelog.

For subqueries that used GET_LOCK() or RELEASE_LOCK() in decimal
context, the server could create ill-defined temporary tables,
resulting in a raised assertion.