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

Introduce @@new_mode variable

    XMLWordPrintable

Details

    Description

      ( After discussion with serg and monty, filing this as a replacement for MDEV-37769 )

      The server currently has @@old_mode variable.

      Introduce a similar @@new_mode variable and command-line switch. Each variable will have its own set of flags.

      old_mode

      The @@old_mode is "Used to emulate old behavior from earlier MariaDB or MySQL versions".
      When a flag in @@old_mode is specified, it gives OLD behavior, when it is not specified one gets new behavior.

      old_mode has a certain deprecation policy.

      new_mode

      @@new_mode is for enabling new behavior.
      When a flag is specified, it gives NEW behavior. When a flag is not specified, one gets the old behavior.

      The usage scenario is:

      • we push a fix into stable releases (11.8 and 12.0 for the fixes that we have in mind). It becomes available in @@new_mode but isn't enabled by default.
      • in 12.1, the fix is enabled without the switch. There's no way to turn it off.
        • @@new_mode should not list the fix as something one can turn on.
        • But it is preferred that if one specifies fix_X that is no longer switchable, then give a warning, not error. If one specifies fix_that_never_existed, still give an error.

      Flags to add

      The first flag is for MDEV-37723. The flag name to use: fix_disk_temptable_costs
      Be sure to add test coverage showing that setting the flag has an effect.

      for MDEV-37732, please create a patch adding fix_subquery_dups_weedout_card (wording suggestions are accepted) that does nothing. We'll join it with fix for MDEV-37732.

      Attachments

        Issue Links

          Activity

            People

              Johnston Rex Johnston
              psergei Sergei Petrunia
              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.