mariadb/mysql-test/suite/federated
Rex 7302e97116 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.

Author:  Igor Babaev
Commiter: Rex Johnston (rex.johnston@mariadb.com)
2025-06-04 05:27:47 +11:00
..
include Merge MySQL 5.1.66 -> MariaDB 5.1.65 2012-11-06 11:52:55 +02:00
assisted_discovery.result MDEV-29446 Change SHOW CREATE TABLE to display default collation 2022-09-12 22:10:39 +04:00
assisted_discovery.test MDEV-17227 Server crash in TABLE_SHARE::init_from_sql_statement_string upon table discovery with non-existent database 2021-01-12 10:25:04 +01:00
combinations MDEV-3860 backport --plugin-load-add (and related mysql-test changes) 2012-12-15 18:24:11 +01:00
disabled.def 5.5-merge 2011-07-02 22:08:51 +02:00
error_on_close-8313.result Write information about restart in .result 2019-04-01 19:47:24 +03:00
error_on_close-8313.test MDEV-6720 - enable connection log in mysqltest by default 2016-03-31 10:11:16 +04:00
error_row_number.result MDEV-26654 ROW_NUMBER is wrong upon INSERT into Federated table 2021-10-26 17:29:40 +02:00
error_row_number.test MDEV-26654 ROW_NUMBER is wrong upon INSERT into Federated table 2021-10-26 17:29:40 +02:00
federated.result MDEV-6720 - enable connection log in mysqltest by default 2016-03-31 10:11:16 +04:00
federated.test fix tests for solaris - different errno numbers and/or different errno messages 2014-02-06 16:28:05 +01:00
federated_archive.result MDEV-6720 - enable connection log in mysqltest by default 2016-03-31 10:11:16 +04:00
federated_archive.test Bug #12876932 - INCORRECT SELECT RESULT ON FEDERATED TABLE 2012-07-26 15:09:22 +05:30
federated_bug_13118.result MDEV-6720 - enable connection log in mysqltest by default 2016-03-31 10:11:16 +04:00
federated_bug_13118.test Bug #12876932 - INCORRECT SELECT RESULT ON FEDERATED TABLE 2012-07-26 15:09:22 +05:30
federated_bug_25714.result MDEV-6720 - enable connection log in mysqltest by default 2016-03-31 10:11:16 +04:00
federated_bug_25714.test Bug #12876932 - INCORRECT SELECT RESULT ON FEDERATED TABLE 2012-07-26 15:29:19 +05:30
federated_bug_32426.result MDEV-6720 - enable connection log in mysqltest by default 2016-03-31 10:11:16 +04:00
federated_bug_32426.test Merge MySQL 5.1.66 -> MariaDB 5.1.65 2012-11-06 11:52:55 +02:00
federated_bug_35333.result Post MDEV-11902 Fix test failures in maria and myisam storage engines 2017-03-03 20:12:48 +02:00
federated_bug_35333.test Merge branch '5.5' into 10.0 2017-03-03 01:37:54 +02:00
federated_bug_585688.result Added Max_index_length and Temporary to SHOW TABLE STATUS 2018-02-12 17:17:26 +02:00
federated_bug_585688.test Merge MySQL 5.1.66 -> MariaDB 5.1.65 2012-11-06 11:52:55 +02:00
federated_debug-master.opt fixes for opensolaris compilation failures 2012-01-05 18:56:31 +01:00
federated_debug.result MDEV-6720 - enable connection log in mysqltest by default 2016-03-31 10:11:16 +04:00
federated_debug.test MDEV-6720 - enable connection log in mysqltest by default 2016-03-31 10:11:16 +04:00
federated_innodb.result MDEV-6720 - enable connection log in mysqltest by default 2016-03-31 10:11:16 +04:00
federated_innodb.test Bug #12876932 - INCORRECT SELECT RESULT ON FEDERATED TABLE 2012-07-26 15:09:22 +05:30
federated_maybe_16324629.result bugfix: multi-UPDATE, vcols, const tables 2016-12-12 20:27:38 +01:00
federated_maybe_16324629.test different fix for internal Oracle MySQL bug#16324629 that doesn't crash 2014-02-17 11:09:33 +01:00
federated_partition-slave.opt Applied patch for lp:585688 "maridb crashes in federatedx code" from lp:~atcurtis/maria/federatedx: 2011-02-10 22:40:59 +02:00
federated_partition.result MDEV-29446 Change SHOW CREATE TABLE to display default collation 2022-09-12 22:10:39 +04:00
federated_partition.test Merge 10.2 into 10.3 2021-08-18 12:26:58 +03:00
federated_server.result MDEV-21743: Re-record --big-test results 2020-03-11 08:29:48 +02:00
federated_server.test MDEV-6311 Add errors on CREATE SERVER 2014-12-04 10:41:51 +01:00
federated_transactions.result MDEV-6720 - enable connection log in mysqltest by default 2016-03-31 10:11:16 +04:00
federated_transactions.test Merge MySQL 5.1.66 -> MariaDB 5.1.65 2012-11-06 11:52:55 +02:00
federated_type_inet6.result MDEV-20806 Federated does not work with INET6, returns NULL with warning ER_TRUNCATED_WRONG_VALUE 2019-10-12 07:25:53 +04:00
federated_type_inet6.test MDEV-20806 Federated does not work with INET6, returns NULL with warning ER_TRUNCATED_WRONG_VALUE 2019-10-12 07:25:53 +04:00
federatedx.result Allow 'mariadb' as a connection wrapper name for FederatedX. 2025-02-25 16:04:56 +02:00
federatedx.test Allow 'mariadb' as a connection wrapper name for FederatedX. 2025-02-25 16:04:56 +02:00
federatedx_create_handlers.result MDEV-30073 Wrong result on 2nd execution of PS for query with NOT EXISTS 2025-06-04 05:27:47 +11:00
federatedx_create_handlers.test MDEV-30073 Wrong result on 2nd execution of PS for query with NOT EXISTS 2025-06-04 05:27:47 +11:00
federatedx_versioning.result Merge 10.3 into 10.4 2022-09-13 16:36:38 +03:00
federatedx_versioning.test MDEV-28632 Change default of explicit_defaults_for_timestamp to ON 2022-08-10 15:03:22 +02:00
have_federatedx.inc MDEV-16342 SHOW ENGINES: MyISAM description is useless 2018-06-11 09:57:54 +02:00
have_federatedx.opt 10.0-base merge (roles) 2013-10-29 15:08:44 +01:00
indexes.result MDEV-27398 DESC index causes wrong (empty) result on Federated tables 2022-01-26 18:43:06 +01:00
indexes.test MDEV-27398 DESC index causes wrong (empty) result on Federated tables 2022-01-26 18:43:06 +01:00
my.cnf overlay support for mysql-test-run and mysqltest 2012-02-23 07:50:11 +01:00
net_thd_crash-12725.result Write information about restart in .result 2019-04-01 19:47:24 +03:00
net_thd_crash-12725.test MDEV-12725 select on federated table crashes server 2017-08-08 22:49:09 +02:00
net_thd_crash-12951.result Write information about restart in .result 2019-04-01 19:47:24 +03:00
net_thd_crash-12951.test MDEV-14272 Mariadb crashes with signal 11 when using federatedx engine and galera 2017-12-28 02:13:25 +01:00
optimizer.result MDEV-14907 FEDERATEDX doesn't respect DISTINCT 2022-01-05 16:52:39 +02:00
optimizer.test MDEV-14907 FEDERATEDX doesn't respect DISTINCT 2022-01-05 16:52:39 +02:00
rpl.result test cases for MySQL bugs 2022-01-21 16:02:34 +01:00
rpl.test federated.rpl failed if federatedx was not compiled 2022-03-01 11:36:39 +02:00
suite.pm allow suite.pm to skip combinations that originate from test/include files. 2012-02-07 16:22:36 +01:00
timestamps.result MDEV-16157 federated corrupts timestamps 2018-05-17 15:33:39 +02:00
timestamps.test MDEV-16157 federated corrupts timestamps 2018-05-17 15:33:39 +02:00
update.result MDEV-32984 Update federated table and column privileges 2024-01-10 10:16:20 +01:00
update.test MDEV-32984 Update federated table and column privileges 2024-01-10 10:16:20 +01:00