Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-34888

Implement subquery optimizer hints

    XMLWordPrintable

Details

    • New Feature
    • Status: In Progress (View Workflow)
    • Major
    • Resolution: Unresolved
    • 11.8
    • Optimizer
    • None

    Description

      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.

      Attachments

        Issue Links

          Activity

            People

              oleg.smirnov Oleg Smirnov
              oleg.smirnov Oleg Smirnov
              Votes:
              1 Vote for this issue
              Watchers:
              3 Start 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.