Details
-
Task
-
Status: In Progress (View Workflow)
-
Critical
-
Resolution: Unresolved
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
- relates to
-
MDEV-37769 Introduce @@optimizer_fixes variable
-
- Closed
-
-
MDEV-36861 TPC-H Query 21 takes 10X longer on 11.4 compared to 10.11
-
- In Progress
-