Skip to content
  • Praveenkumar Hulakund's avatar
    361527a3
    WL#7167 - Change DDL to update rows for view columns in DD.COLUMNS and other dependent values. · 361527a3
    Praveenkumar Hulakund authored
    With WL6599(Integration of IS with New Data Dictionary),
    INFORMATION_SCHEMA.COLUMNS is implemented as a view on the new
    data dictionary table mysql.columns. But only column information
    of tables is stored in the mysql.columns. Hence only columns of
    tables are listed by the INFORMATION_SCHEMA.COLUMNS table.
    Even SHOW COLUMNS lists columns of only tables.
    
    The main goal of this work log is to support INFORMATION_SCHEMA.COLUMNS
    and SHOW COLUMNS implementation to list even view columns
    information.
    
    Functional changes introduced:
    ------------------------------
    
    1. Now view columns information is stored in the data dictionary
       table mysql.columns and these rows are updated each time
       type of the column changes i.e each time when type of columns
       in the base table changes.
    
       With this change INFORMATION_SCHEMA.COLUMNS and SHOW COLUMNS
       lists columns from the view.
    
    2. If view becomes invalid then correct error warning or
       error messages are reported.
    
       Section A.c of  the WL page lists reason for becoming
       valid or invalid.
    
    3. This work log even takes care of updating mysql.tables.is_updatable,
       each time when view becomes updatable or non-updatable.
    
       With this change, INFORMATION_SCHEMA.VIEWS shows the correct IS_UPDATABLE
       state of view always.
    
    Compatibility issues:
    ------------------------
    The view can become valid or invalid on execution of account
    management statements too.  The error/warning reporting in such
    case is not handled as part of this WL. It will be handled
    as part of WL9496.
    
    Source files:
    ----------------
    Most of code changes is placed in sql/dd_sql_view.* and
    sql/dd/dd_view.*.
    
    Related worklogs:
    ------------------
    * WL#6599 - New Data Dictionary and I_S integration.
    
      This WL defines INFORMATION_SCHEMA (I_S) system view over DD
      tables, representing a I_S table. WL7167 implemented over the
      WL6599 changes. So WL#6599 and WL#7167 would be pushed together.
      They are QA'ed together.
    
    Upcoming WLs:
    ------------------
    WL#9496 - Extend view status(valid/invalid) handling to Account
              Management Statements.
    361527a3
    WL#7167 - Change DDL to update rows for view columns in DD.COLUMNS and other dependent values.
    Praveenkumar Hulakund authored
    With WL6599(Integration of IS with New Data Dictionary),
    INFORMATION_SCHEMA.COLUMNS is implemented as a view on the new
    data dictionary table mysql.columns. But only column information
    of tables is stored in the mysql.columns. Hence only columns of
    tables are listed by the INFORMATION_SCHEMA.COLUMNS table.
    Even SHOW COLUMNS lists columns of only tables.
    
    The main goal of this work log is to support INFORMATION_SCHEMA.COLUMNS
    and SHOW COLUMNS implementation to list even view columns
    information.
    
    Functional changes introduced:
    ------------------------------
    
    1. Now view columns information is stored in the data dictionary
       table mysql.columns and these rows are updated each time
       type of the column changes i.e each time when type of columns
       in the base table changes.
    
       With this change INFORMATION_SCHEMA.COLUMNS and SHOW COLUMNS
       lists columns from the view.
    
    2. If view becomes invalid then correct error warning or
       error messages are reported.
    
       Section A.c of  the WL page lists reason for becoming
       valid or invalid.
    
    3. This work log even takes care of updating mysql.tables.is_updatable,
       each time when view becomes updatable or non-updatable.
    
       With this change, INFORMATION_SCHEMA.VIEWS shows the correct IS_UPDATABLE
       state of view always.
    
    Compatibility issues:
    ------------------------
    The view can become valid or invalid on execution of account
    management statements too.  The error/warning reporting in such
    case is not handled as part of this WL. It will be handled
    as part of WL9496.
    
    Source files:
    ----------------
    Most of code changes is placed in sql/dd_sql_view.* and
    sql/dd/dd_view.*.
    
    Related worklogs:
    ------------------
    * WL#6599 - New Data Dictionary and I_S integration.
    
      This WL defines INFORMATION_SCHEMA (I_S) system view over DD
      tables, representing a I_S table. WL7167 implemented over the
      WL6599 changes. So WL#6599 and WL#7167 would be pushed together.
      They are QA'ed together.
    
    Upcoming WLs:
    ------------------
    WL#9496 - Extend view status(valid/invalid) handling to Account
              Management Statements.
Loading