Type:
New Feature
Priority:
Critical
Resolution:
Unresolved
Subquery hints affect whether to use semijoin transformations and which semijoin strategies to permit, and, when semijoins are not used, whether to use subquery materialization or IN-to-EXISTS transformations.
Syntax of hints that affect semijoin strategies:
hint_name([@query_block_name] [strategy [, strategy] ...])
The syntax refers to these terms:
hint_name: These hint names are permitted:
SEMIJOIN, NO_SEMIJOIN: Enable or disable the named semijoin strategies.
strategy: A semijoin strategy to be enabled or disabled. These strategy names are permitted: DUPSWEEDOUT, FIRSTMATCH, LOOSESCAN, MATERIALIZATION.
For SEMIJOIN hints, if no strategies are named, semijoin is used if possible based on the strategies enabled according to the optimizer_switch system variable. If strategies are named but inapplicable for the statement, DUPSWEEDOUT is used.
For NO_SEMIJOIN hints, if no strategies are named, semijoin is not used. If strategies are named that rule out all applicable strategies for the statement, DUPSWEEDOUT is used.
See MySQL documentation for details.
Worklog #8244 may be also useful.
{"report":{"fcp":1002.4000000953674,"ttfb":255,"pageVisibility":"visible","entityId":130655,"key":"jira.project.issue.view-issue","isInitial":true,"threshold":1000,"elementTimings":{},"userDeviceMemory":8,"userDeviceProcessors":64,"apdex":0.5,"journeyId":"9c927426-467c-4df8-a1ec-8a3c932e39d1","navigationType":0,"readyForUser":1075.4000000953674,"redirectCount":0,"resourceLoadedEnd":729.4000000953674,"resourceLoadedStart":262,"resourceTiming":[{"duration":204.5,"initiatorType":"link","name":"https://jira.mariadb.org/s/2c21342762a6a02add1c328bed317ffd-CDN/lu2bu7/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/css/_super/batch.css","startTime":262,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":262,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":466.5,"responseStart":0,"secureConnectionStart":0},{"duration":204.79999995231628,"initiatorType":"link","name":"https://jira.mariadb.org/s/7ebd35e77e471bc30ff0eba799ebc151-CDN/lu2bu7/820016/12ta74/8679b4946efa1a0bb029a3a22206fb5d/_/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":262.2000000476837,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":262.2000000476837,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":467,"responseStart":0,"secureConnectionStart":0},{"duration":294.10000014305115,"initiatorType":"script","name":"https://jira.mariadb.org/s/fbf975c0cce4b1abf04784eeae9ba1f4-CDN/lu2bu7/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/js/_super/batch.js?locale=en","startTime":262.2999999523163,"connectEnd":262.2999999523163,"connectStart":262.2999999523163,"domainLookupEnd":262.2999999523163,"domainLookupStart":262.2999999523163,"fetchStart":262.2999999523163,"redirectEnd":0,"redirectStart":0,"requestStart":469.40000009536743,"responseEnd":556.4000000953674,"responseStart":480.7999999523163,"secureConnectionStart":262.2999999523163},{"duration":448.09999990463257,"initiatorType":"script","name":"https://jira.mariadb.org/s/099b33461394b8015fc36c0a4b96e19f-CDN/lu2bu7/820016/12ta74/8679b4946efa1a0bb029a3a22206fb5d/_/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":262.40000009536743,"connectEnd":262.40000009536743,"connectStart":262.40000009536743,"domainLookupEnd":262.40000009536743,"domainLookupStart":262.40000009536743,"fetchStart":262.40000009536743,"redirectEnd":0,"redirectStart":0,"requestStart":470.7000000476837,"responseEnd":710.5,"responseStart":484.2999999523163,"secureConnectionStart":262.40000009536743},{"duration":207.40000009536743,"initiatorType":"script","name":"https://jira.mariadb.org/s/94c15bff32baef80f4096a08aceae8bc-CDN/lu2bu7/820016/12ta74/c92c0caa9a024ae85b0ebdbed7fb4bd7/_/download/contextbatch/js/atl.global,-_super/batch.js?locale=en","startTime":262.5,"connectEnd":262.5,"connectStart":262.5,"domainLookupEnd":262.5,"domainLookupStart":262.5,"fetchStart":262.5,"redirectEnd":0,"redirectStart":0,"requestStart":262.5,"responseEnd":469.90000009536743,"responseStart":469.90000009536743,"secureConnectionStart":262.5},{"duration":223.09999990463257,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-en/jira.webresources:calendar-en.js","startTime":262.5,"connectEnd":262.5,"connectStart":262.5,"domainLookupEnd":262.5,"domainLookupStart":262.5,"fetchStart":262.5,"redirectEnd":0,"redirectStart":0,"requestStart":471.90000009536743,"responseEnd":485.59999990463257,"responseStart":483.59999990463257,"secureConnectionStart":262.5},{"duration":228,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-localisation-moment/jira.webresources:calendar-localisation-moment.js","startTime":262.59999990463257,"connectEnd":262.59999990463257,"connectStart":262.59999990463257,"domainLookupEnd":262.59999990463257,"domainLookupStart":262.59999990463257,"fetchStart":262.59999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":472.7999999523163,"responseEnd":490.59999990463257,"responseStart":489.7000000476837,"secureConnectionStart":262.59999990463257},{"duration":209.40000009536743,"initiatorType":"link","name":"https://jira.mariadb.org/s/b04b06a02d1959df322d9cded3aeecc1-CDN/lu2bu7/820016/12ta74/a2ff6aa845ffc9a1d22fe23d9ee791fc/_/download/contextbatch/css/jira.global.look-and-feel,-_super/batch.css","startTime":262.7999999523163,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":262.7999999523163,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":472.2000000476837,"responseStart":0,"secureConnectionStart":0},{"duration":263.7999999523163,"initiatorType":"script","name":"https://jira.mariadb.org/rest/api/1.0/shortcuts/820016/47140b6e0a9bc2e4913da06536125810/shortcuts.js?context=issuenavigation&context=issueaction","startTime":262.7999999523163,"connectEnd":262.7999999523163,"connectStart":262.7999999523163,"domainLookupEnd":262.7999999523163,"domainLookupStart":262.7999999523163,"fetchStart":262.7999999523163,"redirectEnd":0,"redirectStart":0,"requestStart":475,"responseEnd":526.5999999046326,"responseStart":523.0999999046326,"secureConnectionStart":262.7999999523163},{"duration":210.69999980926514,"initiatorType":"link","name":"https://jira.mariadb.org/s/3ac36323ba5e4eb0af2aa7ac7211b4bb-CDN/lu2bu7/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":262.90000009536743,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":262.90000009536743,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":473.59999990463257,"responseStart":0,"secureConnectionStart":0},{"duration":263.7999999523163,"initiatorType":"script","name":"https://jira.mariadb.org/s/3339d87fa2538a859872f2df449bf8d0-CDN/lu2bu7/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":263,"connectEnd":263,"connectStart":263,"domainLookupEnd":263,"domainLookupStart":263,"fetchStart":263,"redirectEnd":0,"redirectStart":0,"requestStart":476,"responseEnd":526.7999999523163,"responseStart":523.7999999523163,"secureConnectionStart":263},{"duration":460.5,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-js/jira.webresources:bigpipe-js.js","startTime":268.59999990463257,"connectEnd":268.59999990463257,"connectStart":268.59999990463257,"domainLookupEnd":268.59999990463257,"domainLookupStart":268.59999990463257,"fetchStart":268.59999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":519.0999999046326,"responseEnd":729.0999999046326,"responseStart":721.0999999046326,"secureConnectionStart":268.59999990463257},{"duration":457.2000000476837,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-init/jira.webresources:bigpipe-init.js","startTime":272.2000000476837,"connectEnd":272.2000000476837,"connectStart":272.2000000476837,"domainLookupEnd":272.2000000476837,"domainLookupStart":272.2000000476837,"fetchStart":272.2000000476837,"redirectEnd":0,"redirectStart":0,"requestStart":547.2000000476837,"responseEnd":729.4000000953674,"responseStart":723.0999999046326,"secureConnectionStart":272.2000000476837},{"duration":69.39999985694885,"initiatorType":"xmlhttprequest","name":"https://jira.mariadb.org/rest/webResources/1.0/resources","startTime":696.4000000953674,"connectEnd":696.4000000953674,"connectStart":696.4000000953674,"domainLookupEnd":696.4000000953674,"domainLookupStart":696.4000000953674,"fetchStart":696.4000000953674,"redirectEnd":0,"redirectStart":0,"requestStart":733.4000000953674,"responseEnd":765.7999999523163,"responseStart":765.0999999046326,"secureConnectionStart":696.4000000953674},{"duration":236.90000009536743,"initiatorType":"xmlhttprequest","name":"https://jira.mariadb.org/rest/webResources/1.0/resources","startTime":926.0999999046326,"connectEnd":926.0999999046326,"connectStart":926.0999999046326,"domainLookupEnd":926.0999999046326,"domainLookupStart":926.0999999046326,"fetchStart":926.0999999046326,"redirectEnd":0,"redirectStart":0,"requestStart":926.0999999046326,"responseEnd":1163,"responseStart":1163,"secureConnectionStart":926.0999999046326}],"fetchStart":0,"domainLookupStart":0,"domainLookupEnd":0,"connectStart":0,"connectEnd":0,"requestStart":62,"responseStart":255,"responseEnd":272,"domLoading":257,"domInteractive":1126,"domContentLoadedEventStart":1127,"domContentLoadedEventEnd":1172,"domComplete":1342,"loadEventStart":1342,"loadEventEnd":1342,"userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","marks":[{"name":"bigPipe.sidebar-id.start","time":1106.5999999046326},{"name":"bigPipe.sidebar-id.end","time":1107.2999999523163},{"name":"bigPipe.activity-panel-pipe-id.start","time":1107.4000000953674},{"name":"bigPipe.activity-panel-pipe-id.end","time":1109.2000000476837},{"name":"activityTabFullyLoaded","time":1193.0999999046326}],"measures":[],"correlationId":"26e8fac92af173","effectiveType":"4g","downlink":10,"rtt":0,"serverDuration":132,"dbReadsTimeInMs":26,"dbConnsTimeInMs":34,"applicationHash":"9d11dbea5f4be3d4cc21f03a88dd11d8c8687422","experiments":[]}}
The final version is in the branch
bb-opt-hints-1
.