mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 03:52:35 +01:00
fcd345de48
Json test about max statement time fails with freebsd because on some architectures the test might execute faster and the statement may not fail. To simulate failure regardless of architecture, introduce a wait of seconds longer than the max_statement_time.
45 lines
1.9 KiB
Text
45 lines
1.9 KiB
Text
set global max_allowed_packet=1073741824;
|
|
connect u,localhost,root;
|
|
#
|
|
# MDEV-24909 JSON functions don't respect KILL QUERY / max_statement_time limit
|
|
#
|
|
set group_concat_max_len= 4294967295;
|
|
set @obj=concat_ws('','{', repeat('"a":"b",', 1250000/2), '"c":"d"}');
|
|
set @arr=concat_ws('','[', repeat('1234567,', 1250000/2), '2345678]');
|
|
select length(@obj), length(@arr);
|
|
length(@obj) length(@arr)
|
|
5000009 5000009
|
|
set max_statement_time=0.0001;
|
|
SET @old_debug= @@debug_dbug;
|
|
SET debug_dbug='+d,debug_max_statement_time exceeded';
|
|
select json_array_append(@arr, '$[0]', 1);
|
|
ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
|
select json_array_insert(@arr, '$[0]', 1);
|
|
ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
|
select json_insert(@obj, '$.meta', 1);
|
|
ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
|
select json_compact(@arr);
|
|
ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
|
select json_detailed(@arr);
|
|
ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
|
select json_loose(@arr);
|
|
ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
|
select json_merge(@obj, @arr);
|
|
ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
|
select json_merge_patch(@obj, @obj);
|
|
ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
|
select json_merge_preserve(@obj, @arr);
|
|
ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
|
select json_remove(@obj,'$.foo');
|
|
ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
|
select json_replace(@obj,'$.foo',1);
|
|
ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
|
select json_set(@arr,'$[1000]',1);
|
|
ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
|
SET debug_dbug= @old_debug;
|
|
disconnect u;
|
|
connection default;
|
|
set global max_allowed_packet=default;
|
|
#
|
|
# End of 10.6 tests
|
|
#
|