[MDEV-18240] Assertion `0' failed in Item_cache_timestamp::val_datetime_packed Created: 2019-01-15  Updated: 2019-04-02  Resolved: 2019-04-02

Status: Closed
Project: MariaDB Server
Component/s: Temporal Types
Affects Version/s: 10.4
Fix Version/s: 10.4.4

Type: Bug Priority: Major
Reporter: Alice Sherepa Assignee: Alexander Barkov
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Relates
relates to MDEV-18595 Assertion `0' failed in Item_cache_ti... Closed

 Description   

CREATE TABLE t1 (c1 timestamp);
 
SELECT MIN(t1.c1) AS k1 FROM t1
HAVING (k1 >= ALL(SELECT 'a' UNION SELECT 'r'));

10.4 ac9b818c241cf59ad

mysqld: /git/10.4/sql/item.h:6759: virtual longlong Item_cache_timestamp::val_datetime_packed(THD*): Assertion `0' failed.
 
/lib/x86_64-linux-gnu/libc.so.6(+0x2dc82)[0x7f1c108adc82]
/git/10.4/sql/mysqld(+0x1899c1b)[0x55c0e4f82c1b]
sql/item_cmpfunc.cc:730(Arg_comparator::compare_datetime())[0x55c0e4f92051]
sql/item_cmpfunc.h:104(Arg_comparator::compare())[0x55c0e4fcf901]
sql/item_cmpfunc.cc:1788(Item_func_gt::val_int())[0x55c0e4f9e3ea]
sql/item_cmpfunc.cc:1541(Item_in_optimizer::val_int())[0x55c0e4f9ba16]
sql/sql_type.cc:4375(Type_handler_int_result::Item_val_bool(Item*) const)[0x55c0e4c65cf4]
/git/10.4/sql/mysqld(+0xeae4da)[0x55c0e45974da]
/git/10.4/sql/mysqld(_ZN17Item_func_not_all7val_intEv+0x1bd)[0x55c0e4f8c0f5]
sql/item.h:1449(Item::val_bool())[0x55c0e48d853d]
sql/item_cmpfunc.cc:219(Item_func_not_all::val_int())[0x55c0e48995fc]
sql/sql_select.cc:13459(return_zero_rows(JOIN*, select_result*, List<TABLE_LIST>&, List<Item>&, bool, unsigned long long, char const*, Item*, List<Item>&))[0x55c0e4897bd0]
sql/sql_select.cc:4029(JOIN::exec_inner())[0x55c0e489afff]
sql/sql_select.cc:3889(JOIN::exec())[0x55c0e487529a]
sql/sql_select.cc:4295(mysql_select(THD*, 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*))[0x55c0e47fb2e1]
sql/sql_select.cc:385(handle_select(THD*, LEX*, select_result*, unsigned long))[0x55c0e47e9a15]
sql/sql_parse.cc:6567(execute_sqlcom_select(THD*, TABLE_LIST*))[0x55c0e4803896]
sql/sql_parse.cc:3776(mysql_execute_command(THD*))[0x55c0e47de6b8]
sql/sql_parse.cc:8104(mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool))[0x55c0e47db850]
sql/sql_parse.cc:1853(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool))[0x55c0e4b3342b]
sql/sql_parse.cc:1396(do_command(THD*))[0x55c0e4b32e08]
sql/sql_connect.cc:1402(do_handle_one_connection(CONNECT*))[0x55c0e5e8844e]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x76ba)[0x7f1c114f26ba]
x86_64/clone.S:111(clone)[0x7f1c1098741d]



 Comments   
Comment by Alexander Barkov [ 2019-04-02 ]

Also repeatable with this script:

CREATE OR REPLACE TABLE t1 (c1 timestamp);
SELECT * FROM t1 HAVING MIN(t1.c1) >= ALL(SELECT 'a' UNION SELECT 'r');

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