Without EITS/optimizer_use_codition_selectivity, the query in the test case below sometimes is executed with eq_ref, and sometimes with ref. But with EITS/optimizer_use_codition_selectivity>=3, it seems always ref.
Execution with ref takes approximately 5 times longer.
SELECT alias1 . `col_varchar_10_latin1` AS field1 , alias2 . `col_varchar_1024_latin1_key` AS field2 FROM L AS alias1 LEFTJOIN K AS alias2 LEFTJOIN J AS alias3 ON alias2 . `col_varchar_10_latin1_key` = alias3 . `col_varchar_1024_utf8_key` ON alias1 . `col_int` = alias3 . `pk` WHERE alias3 . `col_varchar_1024_utf8` ISNOTNULLAND alias2 . `col_varchar_1024_utf8` > 'v'AND alias2 . `col_varchar_1024_utf8` < 'z';
+------------+----------
| field1 | field2
+------------+----------
...
+------------+----------
1034 rowsinset (0.11 sec)
SET use_stat_tables = PREFERABLY, optimizer_use_condition_selectivity = 3;
SELECT alias1 . `col_varchar_10_latin1` AS field1 , alias2 . `col_varchar_1024_latin1_key` AS field2 FROM L AS alias1 LEFTJOIN K AS alias2 LEFTJOIN J AS alias3 ON alias2 . `col_varchar_10_latin1_key` = alias3 . `col_varchar_1024_utf8_key` ON alias1 . `col_int` = alias3 . `pk` WHERE alias3 . `col_varchar_1024_utf8` ISNOTNULLAND alias2 . `col_varchar_1024_utf8` > 'v'AND alias2 . `col_varchar_1024_utf8` < 'z';
+------------+----------
| field1 | field2
+------------+----------
...
+------------+----------
1034 rowsinset (0.66 sec)
Execution times above are from 10.1 commit d161546b67142cdd5322a4ed160441045ae0cd1e. Also reproducible on 10.0 and on debug builds – execution time is different there, but the approximate ratio holds.
I've set it to minor because the scenario is not necessarily common (data types and all). Feel free to adjust it if needed.
Elena Stepanova
added a comment - I've set it to minor because the scenario is not necessarily common (data types and all). Feel free to adjust it if needed.
If I create an index on K(col_varchar_1024_utf8) the optimizer chooses the slow plan with the default value of optimizer_use_condition_selectivity (=1).
I'll try to figure out in 10.2 why the slow plan is so slow with the help of ANALYZE.
Igor Babaev (Inactive)
added a comment - If I create an index on K(col_varchar_1024_utf8) the optimizer chooses the slow plan with the default value of optimizer_use_condition_selectivity (=1).
I'll try to figure out in 10.2 why the slow plan is so slow with the help of ANALYZE.
People
Unassigned
Elena Stepanova
Votes:
0Vote for this issue
Watchers:
3Start watching this issue
Dates
Created:
Updated:
Git Integration
Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.
{"report":{"fcp":1021.6999998092651,"ttfb":333.2999997138977,"pageVisibility":"visible","entityId":44422,"key":"jira.project.issue.view-issue","isInitial":true,"threshold":1000,"elementTimings":{},"userDeviceMemory":8,"userDeviceProcessors":64,"apdex":0.5,"journeyId":"070d27ff-9578-4aee-be57-b445b88809df","navigationType":0,"readyForUser":1125.6999998092651,"redirectCount":0,"resourceLoadedEnd":1268.8999996185303,"resourceLoadedStart":341.7999997138977,"resourceTiming":[{"duration":188.90000009536743,"initiatorType":"link","name":"https://jira.mariadb.org/s/2c21342762a6a02add1c328bed317ffd-CDN/lu2bv2/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/css/_super/batch.css","startTime":341.7999997138977,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":341.7999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":530.6999998092651,"responseStart":0,"secureConnectionStart":0},{"duration":189,"initiatorType":"link","name":"https://jira.mariadb.org/s/7ebd35e77e471bc30ff0eba799ebc151-CDN/lu2bv2/820016/12ta74/2380add21a9a1006587582385952de73/_/download/contextbatch/css/jira.browse.project,project.issue.navigator,jira.view.issue,jira.general,jira.global,atl.general,-_super/batch.css?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&slack-enabled=true","startTime":342,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":342,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":531,"responseStart":0,"secureConnectionStart":0},{"duration":198,"initiatorType":"script","name":"https://jira.mariadb.org/s/e9b27a47da5fb0f74a35acd57e9847fb-CDN/lu2bv2/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/js/_super/batch.js?locale=en","startTime":342.2999997138977,"connectEnd":342.2999997138977,"connectStart":342.2999997138977,"domainLookupEnd":342.2999997138977,"domainLookupStart":342.2999997138977,"fetchStart":342.2999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":342.2999997138977,"responseEnd":540.2999997138977,"responseStart":540.2999997138977,"secureConnectionStart":342.2999997138977},{"duration":253,"initiatorType":"script","name":"https://jira.mariadb.org/s/c32eb0da7ad9831253f8397e6cc26afd-CDN/lu2bv2/820016/12ta74/2380add21a9a1006587582385952de73/_/download/contextbatch/js/jira.browse.project,project.issue.navigator,jira.view.issue,jira.general,jira.global,atl.general,-_super/batch.js?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&locale=en&slack-enabled=true","startTime":342.3999996185303,"connectEnd":342.3999996185303,"connectStart":342.3999996185303,"domainLookupEnd":342.3999996185303,"domainLookupStart":342.3999996185303,"fetchStart":342.3999996185303,"redirectEnd":0,"redirectStart":0,"requestStart":342.3999996185303,"responseEnd":595.3999996185303,"responseStart":595.3999996185303,"secureConnectionStart":342.3999996185303},{"duration":257.09999990463257,"initiatorType":"script","name":"https://jira.mariadb.org/s/bc0bcb146314416123c992714ee00ff7-CDN/lu2bv2/820016/12ta74/c92c0caa9a024ae85b0ebdbed7fb4bd7/_/download/contextbatch/js/atl.global,-_super/batch.js?locale=en","startTime":342.69999980926514,"connectEnd":342.69999980926514,"connectStart":342.69999980926514,"domainLookupEnd":342.69999980926514,"domainLookupStart":342.69999980926514,"fetchStart":342.69999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":342.69999980926514,"responseEnd":599.7999997138977,"responseStart":599.7999997138977,"secureConnectionStart":342.69999980926514},{"duration":258.30000019073486,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bv2/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-en/jira.webresources:calendar-en.js","startTime":342.8999996185303,"connectEnd":342.8999996185303,"connectStart":342.8999996185303,"domainLookupEnd":342.8999996185303,"domainLookupStart":342.8999996185303,"fetchStart":342.8999996185303,"redirectEnd":0,"redirectStart":0,"requestStart":342.8999996185303,"responseEnd":601.1999998092651,"responseStart":601.1999998092651,"secureConnectionStart":342.8999996185303},{"duration":259.2999997138977,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bv2/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-localisation-moment/jira.webresources:calendar-localisation-moment.js","startTime":343,"connectEnd":343,"connectStart":343,"domainLookupEnd":343,"domainLookupStart":343,"fetchStart":343,"redirectEnd":0,"redirectStart":0,"requestStart":343,"responseEnd":602.2999997138977,"responseStart":602.2999997138977,"secureConnectionStart":343},{"duration":343.5,"initiatorType":"link","name":"https://jira.mariadb.org/s/b04b06a02d1959df322d9cded3aeecc1-CDN/lu2bv2/820016/12ta74/a2ff6aa845ffc9a1d22fe23d9ee791fc/_/download/contextbatch/css/jira.global.look-and-feel,-_super/batch.css","startTime":343.19999980926514,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":343.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":686.6999998092651,"responseStart":0,"secureConnectionStart":0},{"duration":260,"initiatorType":"script","name":"https://jira.mariadb.org/rest/api/1.0/shortcuts/820016/47140b6e0a9bc2e4913da06536125810/shortcuts.js?context=issuenavigation&context=issueaction","startTime":343.3999996185303,"connectEnd":343.3999996185303,"connectStart":343.3999996185303,"domainLookupEnd":343.3999996185303,"domainLookupStart":343.3999996185303,"fetchStart":343.3999996185303,"redirectEnd":0,"redirectStart":0,"requestStart":343.3999996185303,"responseEnd":603.3999996185303,"responseStart":603.3999996185303,"secureConnectionStart":343.3999996185303},{"duration":343.2999997138977,"initiatorType":"link","name":"https://jira.mariadb.org/s/3ac36323ba5e4eb0af2aa7ac7211b4bb-CDN/lu2bv2/820016/12ta74/d176f0986478cc64f24226b3d20c140d/_/download/contextbatch/css/com.atlassian.jira.projects.sidebar.init,-_super,-project.issue.navigator,-jira.view.issue/batch.css?jira.create.linked.issue=true","startTime":343.59999990463257,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":343.59999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":686.8999996185303,"responseStart":0,"secureConnectionStart":0},{"duration":261.90000009536743,"initiatorType":"script","name":"https://jira.mariadb.org/s/719848dd97ebe0663199f49a3936487a-CDN/lu2bv2/820016/12ta74/d176f0986478cc64f24226b3d20c140d/_/download/contextbatch/js/com.atlassian.jira.projects.sidebar.init,-_super,-project.issue.navigator,-jira.view.issue/batch.js?jira.create.linked.issue=true&locale=en","startTime":343.69999980926514,"connectEnd":343.69999980926514,"connectStart":343.69999980926514,"domainLookupEnd":343.69999980926514,"domainLookupStart":343.69999980926514,"fetchStart":343.69999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":343.69999980926514,"responseEnd":605.5999999046326,"responseStart":605.5999999046326,"secureConnectionStart":343.69999980926514},{"duration":908.2999997138977,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bv2/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-js/jira.webresources:bigpipe-js.js","startTime":344.59999990463257,"connectEnd":344.59999990463257,"connectStart":344.59999990463257,"domainLookupEnd":344.59999990463257,"domainLookupStart":344.59999990463257,"fetchStart":344.59999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":344.59999990463257,"responseEnd":1252.8999996185303,"responseStart":1252.8999996185303,"secureConnectionStart":344.59999990463257},{"duration":909.4000000953674,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bv2/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-init/jira.webresources:bigpipe-init.js","startTime":344.59999990463257,"connectEnd":344.59999990463257,"connectStart":344.59999990463257,"domainLookupEnd":344.59999990463257,"domainLookupStart":344.59999990463257,"fetchStart":344.59999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":344.59999990463257,"responseEnd":1254,"responseStart":1254,"secureConnectionStart":344.59999990463257},{"duration":164,"initiatorType":"xmlhttprequest","name":"https://jira.mariadb.org/rest/webResources/1.0/resources","startTime":698.6999998092651,"connectEnd":698.6999998092651,"connectStart":698.6999998092651,"domainLookupEnd":698.6999998092651,"domainLookupStart":698.6999998092651,"fetchStart":698.6999998092651,"redirectEnd":0,"redirectStart":0,"requestStart":698.6999998092651,"responseEnd":862.6999998092651,"responseStart":862.6999998092651,"secureConnectionStart":698.6999998092651},{"duration":295.8999996185303,"initiatorType":"link","name":"https://jira.mariadb.org/s/d5715adaadd168a9002b108b2b039b50-CDN/lu2bv2/820016/12ta74/be4b45e9cec53099498fa61c8b7acba4/_/download/contextbatch/css/jira.project.sidebar,-_super,-project.issue.navigator,-jira.general,-jira.browse.project,-jira.view.issue,-jira.global,-atl.general,-com.atlassian.jira.projects.sidebar.init/batch.css?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&slack-enabled=true","startTime":973,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":973,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":1268.8999996185303,"responseStart":0,"secureConnectionStart":0},{"duration":323.90000009536743,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bv2/820016/12ta74/e65b778d185daf5aee24936755b43da6/_/download/contextbatch/js/browser-metrics-plugin.contrib,-_super,-project.issue.navigator,-jira.view.issue,-atl.general/batch.js?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&slack-enabled=true","startTime":973.8999996185303,"connectEnd":973.8999996185303,"connectStart":973.8999996185303,"domainLookupEnd":973.8999996185303,"domainLookupStart":973.8999996185303,"fetchStart":973.8999996185303,"redirectEnd":0,"redirectStart":0,"requestStart":973.8999996185303,"responseEnd":1297.7999997138977,"responseStart":1297.7999997138977,"secureConnectionStart":973.8999996185303},{"duration":336.80000019073486,"initiatorType":"script","name":"https://jira.mariadb.org/s/53a43b6764f587426c7bb9a150184c00-CDN/lu2bv2/820016/12ta74/be4b45e9cec53099498fa61c8b7acba4/_/download/contextbatch/js/jira.project.sidebar,-_super,-project.issue.navigator,-jira.general,-jira.browse.project,-jira.view.issue,-jira.global,-atl.general,-com.atlassian.jira.projects.sidebar.init/batch.js?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&locale=en&slack-enabled=true","startTime":974.2999997138977,"connectEnd":974.2999997138977,"connectStart":974.2999997138977,"domainLookupEnd":974.2999997138977,"domainLookupStart":974.2999997138977,"fetchStart":974.2999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":974.2999997138977,"responseEnd":1311.0999999046326,"responseStart":1311.0999999046326,"secureConnectionStart":974.2999997138977}],"fetchStart":0,"domainLookupStart":0,"domainLookupEnd":0,"connectStart":0,"connectEnd":0,"requestStart":122,"responseStart":333,"responseEnd":338,"domLoading":337,"domInteractive":1277,"domContentLoadedEventStart":1277,"domContentLoadedEventEnd":1322,"domComplete":2190,"loadEventStart":2190,"loadEventEnd":2191,"userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","marks":[{"name":"bigPipe.sidebar-id.start","time":1258.1999998092651},{"name":"bigPipe.sidebar-id.end","time":1258.8999996185303},{"name":"bigPipe.activity-panel-pipe-id.start","time":1259.0999999046326},{"name":"bigPipe.activity-panel-pipe-id.end","time":1260.0999999046326},{"name":"activityTabFullyLoaded","time":1336.5}],"measures":[],"correlationId":"651c2eda22846c","effectiveType":"4g","downlink":10,"rtt":0,"serverDuration":136,"dbReadsTimeInMs":11,"dbConnsTimeInMs":19,"applicationHash":"9d11dbea5f4be3d4cc21f03a88dd11d8c8687422","experiments":[]}}
I've set it to minor because the scenario is not necessarily common (data types and all). Feel free to adjust it if needed.