Valgrind: Conditional jump or move depends on uninitialised values at check_ulonglong by get_ev_num_info
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.5 |
Triaged
|
High
|
Unassigned | |||
5.6 |
Triaged
|
High
|
Unassigned | |||
5.7 |
Triaged
|
High
|
Unassigned |
Bug Description
==21426== Thread 29:
==21426== Conditional jump or move depends on uninitialised value(s)
==21426== at 0x173EF02: check_ulonglong
==21426== by 0x173A5B5: get_ev_
==21426== by 0x173A88A: field_str::add() (sql_analyse.
==21426== by 0x173BE63: Query_result_
==21426== by 0x14DF692: end_send(JOIN*, QEP_TAB*, bool) (sql_executor.
==21426== by 0x14DC20C: evaluate_
==21426== by 0x14DB64C: sub_select(JOIN*, QEP_TAB*, bool) (sql_executor.
==21426== by 0x14DAECD: do_select(JOIN*) (sql_executor.
==21426== by 0x14D8E4E: JOIN::exec() (sql_executor.
==21426== by 0x15781D1: handle_query(THD*, LEX*, Query_result*, unsigned long long, unsigned long long) (sql_select.cc:184)
==21426== by 0x152AC65: execute_
==21426== by 0x1523D58: mysql_execute_
==21426== by 0x152BC42: mysql_parse(THD*, Parser_state*) (sql_parse.cc:5838)
==21426== by 0x1520892: dispatch_
==21426== by 0x151F7AC: do_command(THD*) (sql_parse.cc:1010)
==21426== by 0x1661847: handle_connection (connection_
==21426== by 0x1D0C13B: pfs_spawn_thread (pfs.cc:2188)
==21426== by 0x5075DC4: start_thread (pthread_
==21426== by 0x6E5CCEC: clone (clone.S:113)
TEST CASES:
===========
DROP DATABASE test;CREATE DATABASE test;USE test;
CREATE TABLE t (a varchar(2));
INSERT INTO t values ('00');
select * from t procedure analyse();
DROP DATABASE test;CREATE DATABASE test;USE test;
CREATE TABLE t0 AS SELECT HEX(0x0) AS c;
select * from t0 procedure analyse();
DROP DATABASE test;CREATE DATABASE test;USE test;
CREATE TABLE t (a varchar(3));
INSERT INTO t values ('000');
select * from t procedure analyse();
INVALID CASES:
==============
DROP DATABASE test;CREATE DATABASE test;USE test;
CREATE TABLE t (a varchar(1));
INSERT INTO t values ('0');
select * from t procedure analyse();
DROP DATABASE test;CREATE DATABASE test;USE test;
CREATE TABLE t (a varchar(2));
INSERT INTO t values ('11');
select * from t procedure analyse();
Upstream bug report: https:/ /bugs.mysql. com/bug. php?id= 83251
Also I promise I'll get better and report upstream issues only to Oracle, the launchpad will benefit greatly from this and maybe become 56,99% available. ;)