-
Type:
Task
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Query Optimization
-
Minor Change
-
QO 2023-04-17
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Currently users can pass in any of these values for the QueryFrameworkControl enum:
- forceClassicEngine
- trySbeEngine
- tryBonsai
- This is the default.
- Confusingly, it behaves the same as 'trySbeEngine' by default. (Depends on a feature flag.)
- forceBonsai
- Also behaves the same as 'trySbeEngine' by default.
There are a couple problems with this:
- The default behavior is unclear: the enum defaults to 'tryBonsai' but the actual behavior defaults to 'trySbeEngine'.
- The name "Bonsai" may not be final, so we should not bake it in to user-facing options.
I would propose the following behavior:
- forceClassicEngine
- trySbeEngine
- Make this the default.
- tryBonsai
- Error if the feature flag is not enabled.
- forceBonsai
- Error if the feature flag is not enabled.
This solves the two problems:
- The default behavior is clearly 'trySbeEngine'.
- The names 'tryBonsai' and 'forceBonsai' are not user-facing, because you can't specify them without the feature flag + enableTestCommands.