Type:
Bug
Priority:
Major
Resolution:
Unresolved
Affects Version/s:
None
Component/s:
None
The customer complains about performance regression of a single query after upgrade from 10.5 to 10.6:
select
distinct svc.idService,
svc.deviceUID,
svc.driverId,
svc.lineId,
svc.subLineId,
svc.initDateTime,
svc.endDateTime,
svc.originStopId,
svc.reinforcement,
sd.hardwareId as vehicleIdentificationNumber
from
Service svc
inner join ServiceData sd on
svc.idService = sd.idService
and svc.deviceUID = sd.deviceUID
inner join drivers d on
d.code = svc.driverId
where
((svc.initDateTime between '2025-02-11' and '2025-02-12' )
or (svc.endDateTime between '2025-02-11' and '2025-02-12' ))
and d.company_id in (51)
Database schema and optimizer traces for the query are attached.
10.5 employs join order ["d", "sd", "svc"] while 10.6 chooses another one: ["sd", "svc", "d"] , and the latter proves to be suboptimal. A possible cause of this is the change of default value for `optimizer_prune_level` switch from `0` in 10.5 to `1` in 10.6. Running the query with optimizer_prune_level=0 in 10.6 provides the efficient join order ["d", "sd", "svc"] and time of execution comparable to the one in 10.5.
Looking at the optimizer trace of the slow execution in 10.6 (with optimizer_prune_level=1), we see:
--- 10.6 -----
Table "sd"
rows: 2383155
cost: 6956
Table "svc"
rows: 2383168
cost: 488718.6
Table "d"
rows: 408
cost: 81
At this point the optimizer makes a decision to prune all join orders starting with tables "sd" and "svc" because "d" provides better cost and cardinality.
However, looking at the trace of fast execution in 10.5 (with optimizer_prune_level=1), we can find join orders starting with "d" are much more expensive than those starting with "sd" and "svc":
---- 10.5 -----
join order "d","sd","svc"
cost: 391'321'024
join order "d","svc","sd"
cost: 391'328'030
join order "sd","d","svc"
cost: 392'546'470
join order "sd","svc","d"
cost: 198'557'654 (minimal cost)
join order "svc","sd","d"
cost: 198'563'608
{"report":{"fcp":821.2999997138977,"ttfb":241.69999980926514,"pageVisibility":"visible","entityId":133395,"key":"jira.project.issue.view-issue","isInitial":true,"threshold":1000,"elementTimings":{},"userDeviceMemory":8,"userDeviceProcessors":64,"apdex":1,"journeyId":"c5fc4114-9487-4816-907d-d6db4d3a35b5","navigationType":0,"readyForUser":895.6999998092651,"redirectCount":0,"resourceLoadedEnd":403.5,"resourceLoadedStart":250,"resourceTiming":[{"duration":32.799999713897705,"initiatorType":"link","name":"https://jira.mariadb.org/s/2c21342762a6a02add1c328bed317ffd-CDN/lu2cib/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/css/_super/batch.css","startTime":250,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":250,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":282.7999997138977,"responseStart":0,"secureConnectionStart":0},{"duration":32.80000019073486,"initiatorType":"link","name":"https://jira.mariadb.org/s/7ebd35e77e471bc30ff0eba799ebc151-CDN/lu2cib/820016/12ta74/494e4c556ecbb29f90a3d3b4f09cb99c/_/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&whisper-enabled=true","startTime":250.2999997138977,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":250.2999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":283.09999990463257,"responseStart":0,"secureConnectionStart":0},{"duration":132.19999980926514,"initiatorType":"script","name":"https://jira.mariadb.org/s/0917945aaa57108d00c5076fea35e069-CDN/lu2cib/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/js/_super/batch.js?locale=en","startTime":250.5,"connectEnd":250.5,"connectStart":250.5,"domainLookupEnd":250.5,"domainLookupStart":250.5,"fetchStart":250.5,"redirectEnd":0,"redirectStart":0,"requestStart":286.69999980926514,"responseEnd":382.69999980926514,"responseStart":306.19999980926514,"secureConnectionStart":250.5},{"duration":142.59999990463257,"initiatorType":"script","name":"https://jira.mariadb.org/s/2d8175ec2fa4c816e8023260bd8c1786-CDN/lu2cib/820016/12ta74/494e4c556ecbb29f90a3d3b4f09cb99c/_/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&whisper-enabled=true","startTime":251.19999980926514,"connectEnd":285.7999997138977,"connectStart":285.7999997138977,"domainLookupEnd":285.7999997138977,"domainLookupStart":285.7999997138977,"fetchStart":251.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":286.19999980926514,"responseEnd":393.7999997138977,"responseStart":302.09999990463257,"secureConnectionStart":285.7999997138977},{"duration":52.30000019073486,"initiatorType":"script","name":"https://jira.mariadb.org/s/a9324d6758d385eb45c462685ad88f1d-CDN/lu2cib/820016/12ta74/c92c0caa9a024ae85b0ebdbed7fb4bd7/_/download/contextbatch/js/atl.global,-_super/batch.js?locale=en","startTime":251.39999961853027,"connectEnd":251.39999961853027,"connectStart":251.39999961853027,"domainLookupEnd":251.39999961853027,"domainLookupStart":251.39999961853027,"fetchStart":251.39999961853027,"redirectEnd":0,"redirectStart":0,"requestStart":286.7999997138977,"responseEnd":303.69999980926514,"responseStart":301.59999990463257,"secureConnectionStart":251.39999961853027},{"duration":69.89999961853027,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2cib/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-en/jira.webresources:calendar-en.js","startTime":251.5,"connectEnd":251.5,"connectStart":251.5,"domainLookupEnd":251.5,"domainLookupStart":251.5,"fetchStart":251.5,"redirectEnd":0,"redirectStart":0,"requestStart":296.2999997138977,"responseEnd":321.3999996185303,"responseStart":319,"secureConnectionStart":251.5},{"duration":70.30000019073486,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2cib/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-localisation-moment/jira.webresources:calendar-localisation-moment.js","startTime":251.69999980926514,"connectEnd":251.69999980926514,"connectStart":251.69999980926514,"domainLookupEnd":251.69999980926514,"domainLookupStart":251.69999980926514,"fetchStart":251.69999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":296.59999990463257,"responseEnd":322,"responseStart":319.59999990463257,"secureConnectionStart":251.69999980926514},{"duration":44.60000038146973,"initiatorType":"link","name":"https://jira.mariadb.org/s/b04b06a02d1959df322d9cded3aeecc1-CDN/lu2cib/820016/12ta74/a2ff6aa845ffc9a1d22fe23d9ee791fc/_/download/contextbatch/css/jira.global.look-and-feel,-_super/batch.css","startTime":251.89999961853027,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":251.89999961853027,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":296.5,"responseStart":0,"secureConnectionStart":0},{"duration":70.19999980926514,"initiatorType":"script","name":"https://jira.mariadb.org/rest/api/1.0/shortcuts/820016/47140b6e0a9bc2e4913da06536125810/shortcuts.js?context=issuenavigation&context=issueaction","startTime":252,"connectEnd":252,"connectStart":252,"domainLookupEnd":252,"domainLookupStart":252,"fetchStart":252,"redirectEnd":0,"redirectStart":0,"requestStart":299.8999996185303,"responseEnd":322.19999980926514,"responseStart":320.3999996185303,"secureConnectionStart":252},{"duration":45.80000019073486,"initiatorType":"link","name":"https://jira.mariadb.org/s/3ac36323ba5e4eb0af2aa7ac7211b4bb-CDN/lu2cib/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":252.19999980926514,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":252.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":298,"responseStart":0,"secureConnectionStart":0},{"duration":81.90000009536743,"initiatorType":"script","name":"https://jira.mariadb.org/s/5d5e8fe91fbc506585e83ea3b62ccc4b-CDN/lu2cib/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":252.2999997138977,"connectEnd":252.2999997138977,"connectStart":252.2999997138977,"domainLookupEnd":252.2999997138977,"domainLookupStart":252.2999997138977,"fetchStart":252.2999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":309.7999997138977,"responseEnd":334.19999980926514,"responseStart":326.5,"secureConnectionStart":252.2999997138977},{"duration":133,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2cib/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-js/jira.webresources:bigpipe-js.js","startTime":254.19999980926514,"connectEnd":254.19999980926514,"connectStart":254.19999980926514,"domainLookupEnd":254.19999980926514,"domainLookupStart":254.19999980926514,"fetchStart":254.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":338.2999997138977,"responseEnd":387.19999980926514,"responseStart":385.09999990463257,"secureConnectionStart":254.19999980926514},{"duration":149.30000019073486,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2cib/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-init/jira.webresources:bigpipe-init.js","startTime":254.19999980926514,"connectEnd":254.19999980926514,"connectStart":254.19999980926514,"domainLookupEnd":254.19999980926514,"domainLookupStart":254.19999980926514,"fetchStart":254.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":391.09999990463257,"responseEnd":403.5,"responseStart":402.5,"secureConnectionStart":254.19999980926514},{"duration":183.19999980926514,"initiatorType":"xmlhttprequest","name":"https://jira.mariadb.org/rest/webResources/1.0/resources","startTime":587.6999998092651,"connectEnd":587.6999998092651,"connectStart":587.6999998092651,"domainLookupEnd":587.6999998092651,"domainLookupStart":587.6999998092651,"fetchStart":587.6999998092651,"redirectEnd":0,"redirectStart":0,"requestStart":715.3999996185303,"responseEnd":770.8999996185303,"responseStart":770.1999998092651,"secureConnectionStart":587.6999998092651},{"duration":202.09999990463257,"initiatorType":"script","name":"https://www.google-analytics.com/analytics.js","startTime":800.1999998092651,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":800.1999998092651,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":1002.2999997138977,"responseStart":0,"secureConnectionStart":0},{"duration":176.90000009536743,"initiatorType":"xmlhttprequest","name":"https://jira.mariadb.org/rest/webResources/1.0/resources","startTime":821.7999997138977,"connectEnd":821.7999997138977,"connectStart":821.7999997138977,"domainLookupEnd":821.7999997138977,"domainLookupStart":821.7999997138977,"fetchStart":821.7999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":963.7999997138977,"responseEnd":998.6999998092651,"responseStart":997.8999996185303,"secureConnectionStart":821.7999997138977}],"fetchStart":0,"domainLookupStart":14,"domainLookupEnd":24,"connectStart":24,"connectEnd":46,"secureConnectionStart":34,"requestStart":47,"responseStart":241,"responseEnd":252,"domLoading":245,"domInteractive":953,"domContentLoadedEventStart":953,"domContentLoadedEventEnd":999,"domComplete":1411,"loadEventStart":1411,"loadEventEnd":1412,"userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","marks":[{"name":"bigPipe.sidebar-id.start","time":936.6999998092651},{"name":"bigPipe.sidebar-id.end","time":937.5},{"name":"bigPipe.activity-panel-pipe-id.start","time":937.5},{"name":"bigPipe.activity-panel-pipe-id.end","time":938.3999996185303},{"name":"activityTabFullyLoaded","time":1013.0999999046326}],"measures":[],"correlationId":"bbf31e1d23b49e","effectiveType":"4g","downlink":9.9,"rtt":0,"serverDuration":105,"dbReadsTimeInMs":17,"dbConnsTimeInMs":26,"applicationHash":"9d11dbea5f4be3d4cc21f03a88dd11d8c8687422","experiments":[]}}
These issues may be related: MDEV-29567, MDEV-761, MDEV-19853.