Skip to content
  • Marc Alff's avatar
    300f50f6
    Bug#20811494 SHOW_COMPATIBILITY_56 = OFF INCOMPATIBLE WITH CONNECTORS · 300f50f6
    Marc Alff authored
    Before this change, running a server with show_compatibility_56 = OFF
    caused failures in Connector/J (the java connector for MySQL)
    
    Root cause of failures is multiple.
    
    1) SHOW VARIABLES WHERE ...
    
    The java connector uses these queries,
    but the server no longer support them.
    
    2) SHOW VARIABLES output
    
    The output has changed from SESSION + GLOBAL variables
    to SESSION only variables.
    
    The java connector is not using SHOW GLOBAL VARIABLES,
    and is then missing some data.
    
    Both items are the result of the proposed deprecation
    related to SHOW_COMPATIBILITY_56 introduced in 5.7.6.
    
    With this fix, the restrictions are lifted,
    so that a server running with SHOW_COMPATIBILITY_56 = OFF
    behave in a way which is compatible with previous, established, usage.
    
    In particular:
    
    A)
    
    The deprecation of SHOW VARIABLES/STATUS WHERE is abandonned.
    WHERE clauses are fully supported, even with SHOW_COMPATIBILITY_56 = OFF.
    
    B)
    
    The table performance_schema.session_variables
    which is the underlying implementation of SHOW VARIABLES
    has been changed to report:
    - SESSION variables (no change)
    - and GLOBAL variables (changed)
    
    C)
    
    Likewise, table performance_schema.session_status
    reports both SESSION and GLOBAL status variables.
    
    As a result, the behavior of:
    - SHOW VARIABLES
    - SHOW STATUS
    is the same as the historical bahavior of MySQL,
    and in particular:
    - WHERE clauses are supported
    - both SESSION and GLOBAL data is reported.
    and this now happens both:
    - with SHOW_COMPATIBILITY_56 = ON
    - with SHOW_COMPATIBILITY_56 = OFF
    
    Note that the variable SHOW_COMPATIBILITY_56 itself still exists,
    but the scope controlled by this variable is reduced.
    300f50f6
    Bug#20811494 SHOW_COMPATIBILITY_56 = OFF INCOMPATIBLE WITH CONNECTORS
    Marc Alff authored
    Before this change, running a server with show_compatibility_56 = OFF
    caused failures in Connector/J (the java connector for MySQL)
    
    Root cause of failures is multiple.
    
    1) SHOW VARIABLES WHERE ...
    
    The java connector uses these queries,
    but the server no longer support them.
    
    2) SHOW VARIABLES output
    
    The output has changed from SESSION + GLOBAL variables
    to SESSION only variables.
    
    The java connector is not using SHOW GLOBAL VARIABLES,
    and is then missing some data.
    
    Both items are the result of the proposed deprecation
    related to SHOW_COMPATIBILITY_56 introduced in 5.7.6.
    
    With this fix, the restrictions are lifted,
    so that a server running with SHOW_COMPATIBILITY_56 = OFF
    behave in a way which is compatible with previous, established, usage.
    
    In particular:
    
    A)
    
    The deprecation of SHOW VARIABLES/STATUS WHERE is abandonned.
    WHERE clauses are fully supported, even with SHOW_COMPATIBILITY_56 = OFF.
    
    B)
    
    The table performance_schema.session_variables
    which is the underlying implementation of SHOW VARIABLES
    has been changed to report:
    - SESSION variables (no change)
    - and GLOBAL variables (changed)
    
    C)
    
    Likewise, table performance_schema.session_status
    reports both SESSION and GLOBAL status variables.
    
    As a result, the behavior of:
    - SHOW VARIABLES
    - SHOW STATUS
    is the same as the historical bahavior of MySQL,
    and in particular:
    - WHERE clauses are supported
    - both SESSION and GLOBAL data is reported.
    and this now happens both:
    - with SHOW_COMPATIBILITY_56 = ON
    - with SHOW_COMPATIBILITY_56 = OFF
    
    Note that the variable SHOW_COMPATIBILITY_56 itself still exists,
    but the scope controlled by this variable is reduced.
Loading