mirror of
https://github.com/MariaDB/server.git
synced 2025-01-19 13:32:33 +01:00
489ad44ab5
The code to get read the value of a system variable was extracting its value on PREPARE stage and was substituting the value (as a constant) into the parse tree. Note that this must be a reversible transformation, i.e. it must be reversed before each re-execution. Unfortunately this cannot be reliably done using the current code, because there are other non-reversible source tree transformations that can interfere with this reversible transformation. Fixed by not resolving the value at PREPARE, but at EXECUTE (as the rest of the functions operate). Added a cache of the value (so that it's constant throughout the execution of the query). Note that the cache also caches NULL values. Updated an obsolete related test suite (variables-big) and the code to test the result type of system variables (as per bug 74). |
||
---|---|---|
.. | ||
.cvsignore | ||
auto_increment.res | ||
auto_increment.tst | ||
big_record.pl | ||
bug25714.c | ||
CMakeLists.txt | ||
connect_test.c | ||
deadlock_test.c | ||
drop_test.pl | ||
export.pl | ||
fork2_test.pl | ||
fork_big.pl | ||
fork_big2.pl | ||
function.res | ||
function.tst | ||
grant.pl | ||
grant.res | ||
index_corrupt.pl | ||
insert_and_repair.pl | ||
insert_test.c | ||
list_test.c | ||
lock_test.pl | ||
lock_test.res | ||
mail_to_db.pl | ||
Makefile.am | ||
myisam-big-rows.tst | ||
mysql_client_test.c | ||
pmail.pl | ||
rename_test.pl | ||
restore-lock.smack | ||
select_test.c | ||
showdb_test.c | ||
ssl_test.c | ||
table_types.pl | ||
test_delayed_insert.pl | ||
thread_test.c | ||
truncate.pl |