Details
-
Type:
Bug
-
Status: Closed
-
Resolution: Not a Bug
-
Affects Version/s: None
-
Fix Version/s: None
-
Component/s: None
-
Labels:
Description
Repeatable with maria-5.3, maria-5.3-mwl89 . Not repeatable with maria-5.2 .
valgrind warnings:
==19646== Conditional jump or move depends on uninitialised value(s)
==19646== at 0x832A44F: evaluate_join_record(JOIN*, st_join_table*, int) (sql_select.cc:14099)
==19646== by 0x832A0CD: sub_select(JOIN*, st_join_table*, bool) (sql_select.cc:14006)
==19646== by 0x8329AD0: sub_select_sjm(JOIN*, st_join_table*, bool) (sql_select.cc:13726)
==19646== by 0x832949F: do_select(JOIN*, List<Item>, st_table, Procedure*) (sql_select.cc:13541)
==19646== by 0x830FCCA: JOIN::exec() (sql_select.cc:2530)
==19646== by 0x83104E7: mysql_select(THD*, Item**, TABLE_LIST, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:2749)
==19646== by 0x8451213: mysql_derived_filling(THD*, st_lex*, TABLE_LIST*) (sql_derived.cc:296)
==19646== by 0x8450B1E: mysql_handle_derived(st_lex*, bool
(THD*, st_lex*, TABLE_LIST*)) (sql_derived.cc:56)
==19646== by 0x82F11E1: open_and_lock_tables_derived(THD*, TABLE_LIST*, bool) (sql_base.cc:5125)
==19646== by 0x82AC8E0: open_and_lock_tables(THD*, TABLE_LIST*) (mysql_priv.h:1650)
==19646== by 0x82A5C00: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:5056)
==19646== by 0x829CC86: mysql_execute_command(THD*) (sql_parse.cc:2235)
==19646== by 0x82A83B7: mysql_parse(THD*, char*, unsigned int, char const**) (sql_parse.cc:6090)
==19646== by 0x829A90F: dispatch_command(enum_server_command, THD*, char*, unsigned int) (sql_parse.cc:1211)
==19646== by 0x8299DBC: do_command(THD*) (sql_parse.cc:904)
==19646== by 0x8296E6F: handle_one_connection (sql_connect.cc:1154)
==19646== Conditional jump or move depends on uninitialised value(s)
==19646== at 0x832A4AE: evaluate_join_record(JOIN*, st_join_table*, int) (sql_select.cc:14108)
==19646== by 0x832A0CD: sub_select(JOIN*, st_join_table*, bool) (sql_select.cc:14006)
==19646== by 0x8329AD0: sub_select_sjm(JOIN*, st_join_table*, bool) (sql_select.cc:13726)
==19646== by 0x832949F: do_select(JOIN*, List<Item>, st_table, Procedure*) (sql_select.cc:13541)
==19646== by 0x830FCCA: JOIN::exec() (sql_select.cc:2530)
==19646== by 0x83104E7: mysql_select(THD*, Item**, TABLE_LIST, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:2749)
==19646== by 0x8451213: mysql_derived_filling(THD*, st_lex*, TABLE_LIST*) (sql_derived.cc:296)
==19646== by 0x8450B1E: mysql_handle_derived(st_lex*, bool
(THD*, st_lex*, TABLE_LIST*)) (sql_derived.cc:56)
==19646== by 0x82F11E1: open_and_lock_tables_derived(THD*, TABLE_LIST*, bool) (sql_base.cc:5125)
==19646== by 0x82AC8E0: open_and_lock_tables(THD*, TABLE_LIST*) (mysql_priv.h:1650)
==19646== by 0x82A5C00: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:5056)
==19646== by 0x829CC86: mysql_execute_command(THD*) (sql_parse.cc:2235)
==19646== by 0x82A83B7: mysql_parse(THD*, char*, unsigned int, char const**) (sql_parse.cc:6090)
==19646== by 0x829A90F: dispatch_command(enum_server_command, THD*, char*, unsigned int) (sql_parse.cc:1211)
==19646== by 0x8299DBC: do_command(THD*) (sql_parse.cc:904)
==19646== by 0x8296E6F: handle_one_connection (sql_connect.cc:1154)
==19646== Conditional jump or move depends on uninitialised value(s)
==19646== at 0x832A4FE: evaluate_join_record(JOIN*, st_join_table*, int) (sql_select.cc:14139)
==19646== by 0x832A0CD: sub_select(JOIN*, st_join_table*, bool) (sql_select.cc:14006)
==19646== by 0x8329AD0: sub_select_sjm(JOIN*, st_join_table*, bool) (sql_select.cc:13726)
==19646== by 0x832949F: do_select(JOIN*, List<Item>, st_table, Procedure*) (sql_select.cc:13541)
==19646== by 0x830FCCA: JOIN::exec() (sql_select.cc:2530)
==19646== by 0x83104E7: mysql_select(THD*, Item**, TABLE_LIST, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:2749)
==19646== by 0x8451213: mysql_derived_filling(THD*, st_lex*, TABLE_LIST*) (sql_derived.cc:296)
==19646== by 0x8450B1E: mysql_handle_derived(st_lex*, bool
(THD*, st_lex*, TABLE_LIST*)) (sql_derived.cc:56)
==19646== by 0x82F11E1: open_and_lock_tables_derived(THD*, TABLE_LIST*, bool) (sql_base.cc:5125)
==19646== by 0x82AC8E0: open_and_lock_tables(THD*, TABLE_LIST*) (mysql_priv.h:1650)
==19646== by 0x82A5C00: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:5056)
==19646== by 0x829CC86: mysql_execute_command(THD*) (sql_parse.cc:2235)
==19646== by 0x82A83B7: mysql_parse(THD*, char*, unsigned int, char const**) (sql_parse.cc:6090)
==19646== by 0x829A90F: dispatch_command(enum_server_command, THD*, char*, unsigned int) (sql_parse.cc:1211)
==19646== by 0x8299DBC: do_command(THD*) (sql_parse.cc:904)
==19646== by 0x8296E6F: handle_one_connection (sql_connect.cc:1154)
test case. Unfortunately, simplification is not available for Valgrind:
SET SESSION optimizer_switch='materialization=on,in_to_exists=on';
CREATE TABLE t1 ( pk int(11) NOT NULL AUTO_INCREMENT, col_int_nokey int(11) DEFAULT NULL, col_int_key int(11) DEFAULT NULL, col_date_key date DEFAULT NUL$
INSERT INTO t1 VALUES (10,7,8,NULL,NULL,'01:27:35','01:27:35','2002-02-26 06:14:37','2002-02-26 06:14:37','v','v'),(11,1,9,'2006-06-14','2006-06-14','19:48:3$
CREATE TABLE t2 ( pk int(11) NOT NULL AUTO_INCREMENT, col_int_nokey int(11) DEFAULT NULL, col_int_key int(11) DEFAULT NULL, col_date_key date DEFAULT NUL$
INSERT INTO t2 VALUES (10,8,8,'2002-02-21','2002-02-21','18:27:58','18:27:58','1900-01-01 00:00:00','1900-01-01 00:00:00',NULL,NULL);
CREATE TABLE t3 ( pk int(11) NOT NULL AUTO_INCREMENT, col_int_nokey int(11) DEFAULT NULL, col_int_key int(11) DEFAULT NULL, col_date_key date DEFAULT NUL$
INSERT INTO t3 VALUES (1,1,7,'1900-01-01','1900-01-01','01:13:38','01:13:38','2005-02-05 00:00:00','2005-02-05 00:00:00','f','f');
EXPLAIN SELECT alias1.col_time_key AS field1
FROM
(
(
SELECT SQ1_alias1.*
FROM t1 AS SQ1_alias1
WHERE SQ1_alias1.col_varchar_nokey IN
(
SELECT C_SQ1_alias1.col_varchar_nokey AS C_SQ1_field1
FROM
( t1 AS C_SQ1_alias1
RIGHT JOIN t3 AS C_SQ1_alias2 ON
(C_SQ1_alias2.col_varchar_key = C_SQ1_alias1.col_varchar_key )
)
)
)
AS alias1
LEFT JOIN t2 AS alias2 ON
(alias2.col_varchar_nokey = alias1.col_varchar_key )
)
WHERE
( alias2.col_int_nokey >= SOME
(
SELECT 2 UNION
SELECT 104 )
)
AND alias1.pk = 4
ORDER BY alias1.col_datetime_key ASC , field1 ;
Gliffy Diagrams
Attachments
Activity
- All
- Comments
- Work Log
- History
- Activity
- Transitions
Re: Valgrind warning / sporadic crash in evaluate_join_record sql_select.cc:14099
Explain:
---
-------------------------------------------------------------------------------------------------------------------------------------------------+---
-------------------------------------------------------------------------------------------------------------------------------------------------+---
-------------------------------------------------------------------------------------------------------------------------------------------------+