mirror of
https://github.com/MariaDB/server.git
synced 2025-01-28 01:34:17 +01:00
aebb1038aa
multi-update was setting up read_set/vcol_set in multi_update::initialize_tables() that is invoked after the optimizer (JOIN::optimize_inner()). But some rows - if they're from const tables - will be read already in the optimizer, and these rows will not have all necessary column/vcol values. * multi_update::initialize_tables() uses results from the optimizer and cannot be moved to be called earlier. * multi_update::prepare() is called before the optimizer, but it cannot set up read_set/vcol_set, because the optimizer might reset them (see SELECT_LEX::update_used_tables()). As a fix I've added a new method, select_result::prepare_to_read_rows(), it's called from inside the optimizer just before make_join_statistics(). |
||
---|---|---|
.. | ||
include | ||
assisted_discovery.result | ||
assisted_discovery.test | ||
combinations | ||
disabled.def | ||
error_on_close-8313.result | ||
error_on_close-8313.test | ||
federated.result | ||
federated.test | ||
federated_archive.result | ||
federated_archive.test | ||
federated_bug_13118.result | ||
federated_bug_13118.test | ||
federated_bug_25714.result | ||
federated_bug_25714.test | ||
federated_bug_32426.result | ||
federated_bug_32426.test | ||
federated_bug_35333.result | ||
federated_bug_35333.test | ||
federated_bug_585688.result | ||
federated_bug_585688.test | ||
federated_debug-master.opt | ||
federated_debug.result | ||
federated_debug.test | ||
federated_innodb.result | ||
federated_innodb.test | ||
federated_maybe_16324629.result | ||
federated_maybe_16324629.test | ||
federated_partition-slave.opt | ||
federated_partition.result | ||
federated_partition.test | ||
federated_server.result | ||
federated_server.test | ||
federated_transactions.result | ||
federated_transactions.test | ||
federatedx.result | ||
federatedx.test | ||
have_federatedx.inc | ||
have_federatedx.opt | ||
my.cnf | ||
suite.pm |