mariadb/mysql-test/suite
Igor Babaev 66bc1c55e3 MDEV-30073 Wrong result on 2nd execution of PS for query with NOT EXISTS
This bug is consequence of a serious architectural flaw of the query
processing at the prepare stage. Context analysis of processed queries has
to be done at this stage. The important part of this analysis is resolution
of column references also known as name resolution. The items for column
references used in a query are created by the parser. They are allocated
in the statement memory because their life span is the same as the life
span of the executed query. During name resolution some of the items are
wrapped into objects belonging to classes derived from the Item_ref class.
In many cases we can't do without such wrappers. For example, the parser
does not differentiate between references to columns of base tables and
references to columns of views. However for a reference to a view column
we need a pointer to the translation item for this column. This pointer
is stored in a Item_direct_view_ref object that wraps the item for the
column reference. Before this patch the wrappers were allocated in
execution memory good only for one execution. That wasn't a problem when
the query was executed only once. Yet for the queries executed as prepared
statements or within a stored procedure it could lead to crashes or wrong
result sets at the second execution of the query. It could happen when
the wrapped item was substituted for something else by permanent
transformations during the optimization phase.

This patch allocates all the wrappers around items created for column
references in the statement memory at the first execution of PS or at the
first call of SP/SF.
2024-06-24 23:47:37 -07:00
..
archive Fix compression tests for s390x 2023-09-05 12:34:39 +03:00
binlog MDEV-27666 User variable not parsed as geometry variable in geometry function 2024-01-16 18:53:23 +04:00
binlog_encryption Fix occasional test failure of rpl.rpl_parallel_stop_slave 2024-03-15 15:04:09 +01:00
client
compat MDEV-33803 Error 4162 "Operator does not exists" is incorrectly-worded 2024-04-03 10:03:02 +11:00
csv
encryption Merge 10.4 into 10.5 2024-03-11 10:08:20 +02:00
engines Merge 10.4 into 10.5 2024-02-12 11:38:13 +02:00
federated MDEV-30073 Wrong result on 2nd execution of PS for query with NOT EXISTS 2024-06-24 23:47:37 -07:00
funcs_1 Merge branch '10.4' into 10.5 2024-01-31 17:32:53 +01:00
funcs_2 MDEV-30233 DROP DATABASE test fails: Directory not empty 2022-12-15 11:14:23 +02:00
galera MDEV-33889 Read only server throws error when running a create temporary table as select statement 2024-04-16 20:43:31 +02:00
galera_3nodes MDEV-25614 disable failing galera test 2024-04-08 19:13:14 +02:00
galera_3nodes_sr Merge 10.4 into 10.5 2024-02-12 11:38:13 +02:00
galera_sr Merge from 10.4 to 10.5 2024-04-15 17:46:49 +02:00
gcol Merge branch '10.4' into 10.5 2023-12-02 01:02:50 +01:00
handler Merge branch '10.4' into 10.5 2023-07-27 15:43:21 +02:00
heap Merge remote-tracking branch 'origin/10.4' into 10.5 2022-09-14 16:24:51 +04:00
innodb Merge branch '10.4' into 10.5 2024-04-16 11:04:14 +02:00
innodb_fts Merge 10.4 into 10.5 2024-03-11 10:08:20 +02:00
innodb_gis Merge branch '10.4' into 10.5 2023-12-02 01:02:50 +01:00
innodb_i_s Merge remote-tracking branch '10.4' into 10.5 2023-03-31 21:32:41 +02:00
innodb_zip Merge branch '10.4' into 10.5 2024-01-31 17:32:53 +01:00
jp MDEV-29446 Change SHOW CREATE TABLE to display default collation 2022-09-12 22:10:39 +04:00
json Merge 10.4 into 10.5 2024-03-11 10:08:20 +02:00
large_tests
maria MDEV-33496 Out of range error in AVG(YEAR(datetime)) due to a wrong data type 2024-02-23 18:30:06 +04:00
mariabackup MDEV-33011 mariabackup --backup: FATAL ERROR: ... Can't open datafile cool_down/t3 2024-02-27 17:59:20 +05:30
mtr/t
mtr2
multi_source Merge from 10.4 to 10.5 2024-04-15 17:46:49 +02:00
optimizer_unfixed_bugs MDEV-29710: Disable some slow tests on Valgrind 2022-10-06 08:42:26 +03:00
parts Merge branch '10.4' into 10.5 2024-04-16 11:04:14 +02:00
perfschema fix perfschema.misc when previous tests used lots of threads 2024-04-08 20:52:14 +02:00
perfschema_stress
period MDEV-25370 Update for portion changes autoincrement key in bi-temp table 2024-01-31 16:03:38 +01:00
plugins Merge branch '10.4' into 10.5 2023-12-02 01:02:50 +01:00
roles MDEV-26875: Wrong user in SET DEFAULT ROLE error 2023-10-30 18:39:56 +01:00
rpl MDEV-30676 rpl.parallel_backup* tests sometimes fail 2024-04-15 15:45:03 +10:00
s3 update s3.partition result after 57ffcd686f 2024-03-14 11:43:13 +01:00
sql_sequence Merge branch '10.4' into 10.5 2024-01-10 18:01:46 +11:00
storage_engine
stress MDEV-29710: Skip some more tests on Valgrind 2022-10-05 20:37:54 +03:00
sys_vars MDEV-28366 GLOBAL debug_dbug setting affected by collation_connection=utf16... 2024-04-10 06:09:45 +04:00
unit
vcol Merge branch '10.4' into 10.5 2023-12-02 01:02:50 +01:00
versioning Merge 10.4 into 10.5 2024-02-13 14:25:21 +02:00
wsrep Merge 10.4 into 10.5 2023-12-21 11:30:32 +02:00