percona 5.7.17-13 crash on UPDATE ON DUPLICATE KEY
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
MySQL Server |
Unknown
|
Unknown
|
||||
Percona Server moved to https://jira.percona.com/projects/PS | Status tracked in 5.7 | |||||
5.7 |
Fix Released
|
High
|
Unassigned |
Bug Description
Hi!
percona 5.7.17-13 (check CentOS 7.3, Ubuntu 16.04 on default config) crash on UPDATE ON DUPLICATE KEY
percona 5.6 All ok
How to reproduce:
<---Structure DB----->
create database buk;
use buk;
CREATE TABLE tablica_s_govnom (
pri1 int(11) UNSIGNED NOT NULL,
DT datetime DEFAULT NULL,
dop1 text DEFAULT NULL ,
PRIMARY KEY (pri1),
INDEX UK_tablica_s_govnom (DT)
)
ENGINE = INNODB
AVG_ROW_LENGTH = 16384
CHARACTER SET utf8
COLLATE utf8_general_ci
ROW_FORMAT = DYNAMIC;
INSERT INTO tablica_
DELIMITER //
CREATE PROCEDURE Sucks_test()
BEGIN
DECLARE pri1,pri3 int;
DECLARE pri2,comment VARCHAR(255);
DECLARE dop1_1,dop2,dop3 VARCHAR(255) DEFAULT '222';
set pri1=1,
INSERT INTO tablica_
VALUES(pri1, NOW() ,dop1_1)
ON DUPLICATE KEY UPDATE DT=NOW(), dop1=VALUES(dop1);
END//
</---Structure DB----->
<---test.sql---->
use buk;
CALL Sucks_test();
CALL Sucks_test();
</---test.sql---->
run test in loop wait 5-10sec and mysql DIE with "mysqld got signal 11 ;"
while true; do mysql < test.sql ; done
Changed in percona-server: | |
status: | New → Confirmed |
status: | Confirmed → New |
08:19:15 UTC - mysqld got signal 11 ; bugs.percona. com/
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.
Attempting to collect some information that could help diagnose the problem.
As this is a crash and something is definitely wrong, the information
collection process might fail.
Please help us make Percona Server better by reporting any
bugs at http://
key_buffer_ size=8388608 size=131072 connections= 13 size)*max_ threads = 68317 K bytes of memory
read_buffer_
max_used_
max_threads=152
thread_count=1
connection_count=1
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_
Hope that's ok; if not, decrease some variables in the equation.
Thread pointer: 0x7f6474023f00 mysqld( my_print_ stacktrace+ 0x3b)[0xeffd8b] mysqld( handle_ fatal_signal+ 0x471)[ 0x7a0181] libpthread. so.0(+0xf370) [0x7f64c3d82370 ] libc.so. 6(+0x14bbf0) [0x7f64c201dbf0 ] mysqld( _ZN10Field_ blob15copy_ blob_valueEP11s t_mem_root+ 0x84)[0x7e4f14] mysqld( _Z25mysql_ prepare_ blob_valuesP3TH DR4ListI4ItemEP 11st_mem_ root+0x2b8) [0xe47818] mysqld( _Z12write_ recordP3THDP5TA BLEP9COPY_ INFOS4_ +0x87d) [0xe483dd] mysqld( _ZN14Sql_ cmd_insert12mys ql_insertEP3THD P10TABLE_ LIST+0x82d) [0xe48e4d] mysqld( _ZN14Sql_ cmd_insert7exec uteEP3THD+ 0xe6)[0xe496a6] mysqld( _Z21mysql_ execute_ commandP3THDb+ 0x18d6) [0xcd1336] mysqld( _ZN13sp_ instr_stmt9exec _coreEP3THDPj+ 0x50)[0xc517b0] mysqld( _ZN12sp_ lex_instr23rese t_lex_and_ exec_coreEP3THD Pjb+0x3a4) [0xc53414] mysqld( _ZN12sp_ lex_instr29vali date_lex_ and_execute_ coreEP3THDPjb+ 0xbb)[0xc53deb] mysqld( _ZN13sp_ instr_stmt7exec uteEP3THDPj+ 0x318)[ 0xc55188] mysqld( _ZN7sp_ head7executeEP3 THDb+0x504) [0xc4cfe4] mysqld( _ZN7sp_ head17execute_ procedureEP3THD P4ListI4ItemE+ 0x787)[ 0xc50b67] mysqld( _Z21mysql_ execute_ commandP3THDb+ 0x4d26) [0xcd4786] mysqld( _Z11mysql_ parseP3THDP12Pa rser_state+ 0x60d)[ 0xcd75cd] mysqld( _Z16dispatch_ commandP3THDPK8 COM_DATA19enum_ server_ command+ 0xaba)[ 0xcd811a] mysqld( _Z10do_ commandP3THD+ 0x1df)[ 0xcd9adf] mysqld( handle_ connection+ 0x2b8)[ 0xda1ae8] mysqld( pfs_spawn_ thread+ 0x1b4)[ 0xf17934] libpthread. so.0(+0x7dc5) [0x7f64c3d7adc5 ] libc.so. 6(clone+ 0x6d)[0x7f64c1f c973d]
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 = 7f64a6249d30 thread_stack 0x40000
/usr/sbin/
/usr/sbin/
/lib64/
/lib64/
/usr/sbin/
/usr/sbin/
/usr/sbin/
/usr/sbin/
/usr/sbin/
/usr/sbin/
/usr/sbin/
/usr/sbin/
/usr/sbin/
/usr/sbin/
/usr/sbin/
/usr/sbin/
/usr/sbin/
/usr/sbin/
/usr/sbin/
/usr/sbin/
/usr/sbin/
/usr/sbin/
/lib64/
/lib64/
Trying to get some variables. s_govnom( pri1, DT, dop1) VALUES(pri1, NOW() ,dop1_1) ON DUPLICATE KEY UPDATE DT=NOW(), dop1=VALUES(dop1)
Some pointers may be invalid and cause the dump to abort.
Query (7f6474008a60): INSERT INTO tablica_
Connection ID (thread ID): 1244
Status: NOT_KILLED
You may download the Percona Server operations manual by visiting www.percona. com/software/ percona- server/. You may find information
http://
in the manual which will help you identify th...