summaryrefslogtreecommitdiff
path: root/mysql-test/main/create_or_replace.result
diff options
context:
space:
mode:
authorOleg Smirnov <olernov@gmail.com>2022-09-12 14:28:00 +0700
committerOleg Smirnov <olernov@gmail.com>2022-10-13 06:42:31 +0400
commitbeb9a5459d4fc21c7d3a3bf1bbc9f461d8f7e51c (patch)
treea53f9f82a9f5ef3a983609f10a862282e53aaf6d /mysql-test/main/create_or_replace.result
parent9206c1ea9746ab022f531e40eec7d930be137f21 (diff)
downloadmariadb-git-beb9a5459d4fc21c7d3a3bf1bbc9f461d8f7e51c.tar.gz
MDEV-20609 Full table scan in INFORMATION_SCHEMA.PARAMETERS/ROUTINES
Queries to INFORMATION_SCHEMA.PARAMETERS and ROUTINES tables are always performed using full index scan of the mysql.proc primary key on fields (`db`,`name`,`type`). This can be done in a much more effective way if `db` and `name` field values can be derived from the WHERE statement, like here: SELECT * FROM INFORMATION_SCHEMA.PARAMETERS WHERE SPECIFIC_SCHEMA = 'test' AND SPECIFIC_NAME = 'my_func' or here: SELECT * FROM information_schema.ROUTINES WHERE ROUTINE_SCHEMA='test' AND ROUTINE_NAME='my_func'. In such cases index range scan may be employed instead of full index scan. This commit makes the server retrieve lookup field values from the SQL statement and perform index range scan instead of full index scan if possible.
Diffstat (limited to 'mysql-test/main/create_or_replace.result')
0 files changed, 0 insertions, 0 deletions