You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe:
Currently, it is hard to know if setting a variable in TiDB has an effect. There are a number of sysvars that are included for compatibility with MySQL, and their inclusion helps compatibility but hurts usability (I have caught myself a couple of times, only to read the manual or the source code and see something is not implemented).
Describe the feature you'd like:
Similar to tidb_enable_noop_functions, there can be tidb_enable_noop_sysvars. When enabled (default) the behavior is the same as currently. When disabled:
Because most ORMs that depend on noops will SELECT @@ the variable (for performance reasons they should be doing this), it will actually still work in most instances. But for compatibility, at least for now the default is still enabled.
The name being similar to noop_funcs makes it very approachable. Unfortunately adoption will be difficult since the default still shows noops, but this is a starting point. It might be hard to completely remove noops because the compatibility testing requirements are so difficult.
The text was updated successfully, but these errors were encountered:
I discussed this with the TiDB team following devcon this year, and we proposed a slightly different behavior: off by default, but produce a warning when updating a sysvar that is unsupported (irrespective of tidb_mysql_compatible_variable_info value). I will update the proposal to incorporate shortly.
Feature Request
Is your feature request related to a problem? Please describe:
Currently, it is hard to know if setting a variable in TiDB has an effect. There are a number of sysvars that are included for compatibility with MySQL, and their inclusion helps compatibility but hurts usability (I have caught myself a couple of times, only to read the manual or the source code and see something is not implemented).
Describe the feature you'd like:
Similar to
tidb_enable_noop_functions
, there can betidb_enable_noop_sysvars
. When enabled (default) the behavior is the same as currently. When disabled:Because most ORMs that depend on noops will SELECT @@ the variable (for performance reasons they should be doing this), it will actually still work in most instances. But for compatibility, at least for now the default is still enabled.
I have a cleanup proposal here: https://docs.google.com/document/d/1i181NttnnQm-B7iq1GCfEFlFccZmZCMBXziqybLoTu8/edit?usp=sharingDescribe alternatives you've considered:
It could error instead of warn, but warn seems sufficient.
Teachability, Documentation, Adoption, Migration Strategy:
The name being similar to noop_funcs makes it very approachable. Unfortunately adoption will be difficult since the default still shows noops, but this is a starting point. It might be hard to completely remove noops because the compatibility testing requirements are so difficult.
The text was updated successfully, but these errors were encountered: