Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-12459

The information_schema tables for getting temporary tables info is missing, at least for innodb there is no INNODB_TEMP_TABLE_INFO

Details

    Description

      Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

      According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

      There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

      The example shows how to use 'INNODB_TEMP_TABLE_INFO' but it doesn't exist

      BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.


      Summary from comments


      This is what will be implemented:
      1. list session ([#1]) temporary tables in I_S.TABLES with column TABLE_TYPE="TEMPORARY"([#2])
      2. by design they will not be listed in I_S.COLUMNS and other I_S tables ([#3]). This MDEV will not implement changes related to the temporary table and I_S.COLUMNS .
      3. issue a warning on CREATE if a new temp table shadows non-temp table ([#4]), not vice-versa.

      References:
      [#1] - No need for connection_id column to list all threads (MDEV-15623 should do that).
      [#2] - Standard prescribes "GLOBAL TEMPORARY" or "LOCAL TEMPORARY" but our tables are neither, so let's just use "TEMPORARY".
      [#3] - I_S.COLUMNS, I_S.STATISTICS, I_S.TABLE_CONSTRAINTS, I_S.KEY_COLUMN_USAGE, I_S.PARTITIONS, I_S.FILES ( ? ), I_S.CHECK_CONSTRAINTS. Comment.
      MariaDB should be also able to show their fields in INFORMATION_SCHEMA.COLUMNS, and any other metadata associated to a normal table. But at least, implementing INFORMATION_SCHEMA.TABLES and INFORMATION_SCHEMA.COLUMNS will help a lot.
      [#4] - Based on comment

      Attachments

        Issue Links

          Activity

            fduenas Francisco Dueñas created issue -
            fduenas Francisco Dueñas made changes -
            Field Original Value New Value
            Description Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE_INFO' but it doesnt exist
            Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE_INFO' but it doesnt exist

            BTW way that implementation is very lmited, there no way you can query against temporary tables fields using a SELECT statement.
            Summary Th information_schema table for getting temporary tables info is missing, at lets innodb is missing INNODB_TEMP_TABLE_INFO The information_schema tables for getting temporary tables info is missing, at least for innodb there is no INNODB_TEMP_TABLE_INFO
            fduenas Francisco Dueñas made changes -
            Description Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE_INFO' but it doesnt exist

            BTW way that implementation is very lmited, there no way you can query against temporary tables fields using a SELECT statement.
            Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.
            elenst Elena Stepanova made changes -
            elenst Elena Stepanova made changes -
            Fix Version/s 10.2 [ 14601 ]
            Assignee Marko Mäkelä [ marko ]
            ratzpo Rasmus Johansson (Inactive) made changes -
            Fix Version/s 10.3 [ 22126 ]
            Fix Version/s 10.2 [ 14601 ]
            marko Marko Mäkelä made changes -
            Component/s Data Definition - Temporary [ 10123 ]
            Component/s Storage Engine - InnoDB [ 10129 ]
            marko Marko Mäkelä made changes -
            Assignee Marko Mäkelä [ marko ]
            elenst Elena Stepanova made changes -
            Affects Version/s 10.2.4 [ 22116 ]
            Affects Version/s 10.2.5 [ 22117 ]
            Environment Windows 10 64 bit
            Issue Type Bug [ 1 ] Task [ 3 ]
            serg Sergei Golubchik made changes -
            Labels beginner-friendly
            serg Sergei Golubchik made changes -
            Fix Version/s 10.3 [ 22126 ]
            serg Sergei Golubchik made changes -
            Assignee Anel Husakovic [ anel ]
            ccalender Chris Calender (Inactive) made changes -
            Support case ID 27461
            anel Anel Husakovic made changes -
            Status Open [ 1 ] Confirmed [ 10101 ]
            anel Anel Husakovic made changes -
            Assignee Anel Husakovic [ anel ] Vicentiu Ciorbaru [ cvicentiu ]
            Status Confirmed [ 10101 ] In Review [ 10002 ]
            anel Anel Husakovic made changes -
            Fix Version/s 10.3 [ 22126 ]
            julien.fritsch Julien Fritsch made changes -
            Priority Major [ 3 ] Critical [ 2 ]
            serg Sergei Golubchik made changes -
            Priority Critical [ 2 ] Major [ 3 ]
            ralf.gebhardt Ralf Gebhardt made changes -
            Fix Version/s 10.3 [ 22126 ]
            ralf.gebhardt Ralf Gebhardt made changes -
            Fix Version/s 10.6 [ 24028 ]
            psergei Sergei Petrunia made changes -
            Rank Ranked lower
            serg Sergei Golubchik made changes -
            Assignee Vicențiu Ciorbaru [ cvicentiu ] Sergei Golubchik [ serg ]
            serg Sergei Golubchik made changes -
            Rank Ranked higher
            serg Sergei Golubchik made changes -
            serg Sergei Golubchik made changes -
            serg Sergei Golubchik made changes -
            Comment [ will be done in MDEV-15623 ]
            serg Sergei Golubchik made changes -
            serg Sergei Golubchik made changes -
            serg Sergei Golubchik made changes -
            Assignee Sergei Golubchik [ serg ] Anel Husakovic [ anel ]
            Status In Review [ 10002 ] Stalled [ 10000 ]
            anel Anel Husakovic made changes -
            Labels beginner-friendly beginner-friendly foundation
            anel Anel Husakovic made changes -
            Assignee Anel Husakovic [ anel ] Sergei Golubchik [ serg ]
            Status Stalled [ 10000 ] In Review [ 10002 ]
            serg Sergei Golubchik made changes -
            Assignee Sergei Golubchik [ serg ] Anel Husakovic [ anel ]
            Status In Review [ 10002 ] Stalled [ 10000 ]
            serg Sergei Golubchik made changes -
            Priority Major [ 3 ] Critical [ 2 ]
            julien.fritsch Julien Fritsch made changes -
            Fix Version/s 10.6 [ 24028 ]
            anel Anel Husakovic made changes -
            Assignee Anel Husakovic [ anel ] Sergei Golubchik [ serg ]
            Status Stalled [ 10000 ] In Review [ 10002 ]
            serg Sergei Golubchik made changes -
            Fix Version/s 10.8 [ 26121 ]
            serg Sergei Golubchik made changes -
            Assignee Sergei Golubchik [ serg ] Anel Husakovic [ anel ]
            Status In Review [ 10002 ] Stalled [ 10000 ]
            serg Sergei Golubchik made changes -
            Workflow MariaDB v3 [ 80262 ] MariaDB v4 [ 131671 ]
            anel Anel Husakovic made changes -
            Description Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.
            Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.
            ----
            *Summary from comments*
            ----
             This is what will be implemented:
             1. list session ([#1]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}([#2])
             2. list them in {{I_S.COLUMNS}} and other {{I_S}} tables ([#3]) if they don't shadow non-temp tables ([#4])
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table ([#4]), not vice-versa.
             4. remove column {{"Temporary"}} in a separate commit

            References:
            [#1] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            [#2] - Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            [#3] - {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I_S.PARTITIONS, I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            [#4] - Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            anel Anel Husakovic made changes -
            Description Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.
            ----
            *Summary from comments*
            ----
             This is what will be implemented:
             1. list session ([#1]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}([#2])
             2. list them in {{I_S.COLUMNS}} and other {{I_S}} tables ([#3]) if they don't shadow non-temp tables ([#4])
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table ([#4]), not vice-versa.
             4. remove column {{"Temporary"}} in a separate commit

            References:
            [#1] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            [#2] - Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            [#3] - {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I_S.PARTITIONS, I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            [#4] - Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.
            ----
            *Summary from comments*
            ----
             This is what will be implemented:
             1. list session ([#1]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}([#2])
             2. list them in {{I_S.COLUMNS}} and other {{I_S}} tables ([#3]) if they don't shadow non-temp tables ([#4])
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table ([#4]), not vice-versa.
             4. remove column {{"Temporary"}} in a separate commit

            References:
            [#1] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            [#2] - Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            [#3] - {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I_S.PARTITIONS, {{I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            [#4] - Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            ralf.gebhardt Ralf Gebhardt made changes -
            Fix Version/s 10.9 [ 26905 ]
            Fix Version/s 10.8 [ 26121 ]
            anel Anel Husakovic made changes -
            Status Stalled [ 10000 ] In Progress [ 3 ]
            monty Michael Widenius made changes -
            Comment [ Why do "list session (1) temporary tables in I_S.TABLES with column TABLE_TYPE="TEMPORARY"(2)"

            Information_schema.tables has already a column 'temporary'. There is no reason to add more information about temporary tables to it.
            If the TEMPORARY is a requirement by the standard, then it should be ok. If not, don't do, it as there may already be tools who uses the temporary column.
            However, we cannot just remove the 'temporary' column as there may be tools or programs depending on it.

            ]
            monty Michael Widenius made changes -
            Comment [ Please describe the reason why we want to change the current format?
            Yes, GLOBAL TEMPORARY and LOCAL TEMPORARY are standard, but as we have neither, what is wrong with just using the current temporary column?
            We should not remove the 'Temporary' column as there may be users, applications or tools that depends on this. Remember that it is as important to be backward compatible at is is to following the standard. Best if we can do both.
            ]
            monty Michael Widenius made changes -
            Comment [ Please describe the reason why we want to change the current format?
            Yes, GLOBAL TEMPORARY and LOCAL TEMPORARY are standard, but as we have neither, what is wrong with just using the current temporary column?
            We should not remove the 'Temporary' column as there may be users, applications or tools that depends on this. Remember that it is as important to be backward compatible at is is to following the standard. Best if we can do both.
            ]
            marko Marko Mäkelä made changes -
            marko Marko Mäkelä made changes -
            marko Marko Mäkelä made changes -
            serg Sergei Golubchik made changes -
            anel Anel Husakovic made changes -
            Status In Progress [ 3 ] In Testing [ 10301 ]
            anel Anel Husakovic made changes -
            Status In Testing [ 10301 ] Stalled [ 10000 ]
            anel Anel Husakovic made changes -
            Status Stalled [ 10000 ] In Testing [ 10301 ]
            anel Anel Husakovic made changes -
            Assignee Anel Husakovic [ anel ] Elena Stepanova [ elenst ]
            julien.fritsch Julien Fritsch made changes -
            Description Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.
            ----
            *Summary from comments*
            ----
             This is what will be implemented:
             1. list session ([#1]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}([#2])
             2. list them in {{I_S.COLUMNS}} and other {{I_S}} tables ([#3]) if they don't shadow non-temp tables ([#4])
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table ([#4]), not vice-versa.
             4. remove column {{"Temporary"}} in a separate commit

            References:
            [#1] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            [#2] - Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            [#3] - {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I_S.PARTITIONS, {{I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            [#4] - Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info\-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE\_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.

            ----

            *Summary from comments*

            ----

             This is what will be implemented:
             1. list session (\[#1\]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}(\[#2\])
             2. list them in {{I_S.COLUMNS}} and other {{I_S}} tables (\[#3\]) if they don't shadow non\-temp tables (\[#4\])
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table (\[#4\]), not vice-versa.
             4. remove column {{"Temporary"}} in a separate commit

            References:
            \[#1\] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            \[#2\] \- Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            \[#3\] \- {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I\_S.PARTITIONS, {{I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            \[#4\] \- Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            serg Sergei Golubchik made changes -
            Description Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info\-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE\_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.

            ----

            *Summary from comments*

            ----

             This is what will be implemented:
             1. list session (\[#1\]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}(\[#2\])
             2. list them in {{I_S.COLUMNS}} and other {{I_S}} tables (\[#3\]) if they don't shadow non\-temp tables (\[#4\])
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table (\[#4\]), not vice-versa.
             4. remove column {{"Temporary"}} in a separate commit

            References:
            \[#1\] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            \[#2\] \- Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            \[#3\] \- {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I\_S.PARTITIONS, {{I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            \[#4\] \- Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE\_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.

            ----

            *Summary from comments*

            ----

             This is what will be implemented:
             1. list session (\[#1\]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}(\[#2\])
             2. list them in {{I_S.COLUMNS}} and other {{I_S}} tables (\[#3\]) if they don't shadow non\-temp tables (\[#4\])
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table (\[#4\]), not vice-versa.
             4. remove column {{"Temporary"}} in a separate commit

            References:
            \[#1\] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            \[#2\] \- Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            \[#3\] \- {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I\_S.PARTITIONS, {{I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            \[#4\] \- Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            elenst Elena Stepanova made changes -
            anel Anel Husakovic made changes -
            Description Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE\_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.

            ----

            *Summary from comments*

            ----

             This is what will be implemented:
             1. list session (\[#1\]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}(\[#2\])
             2. list them in {{I_S.COLUMNS}} and other {{I_S}} tables (\[#3\]) if they don't shadow non\-temp tables (\[#4\])
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table (\[#4\]), not vice-versa.
             4. remove column {{"Temporary"}} in a separate commit

            References:
            \[#1\] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            \[#2\] \- Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            \[#3\] \- {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I\_S.PARTITIONS, {{I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            \[#4\] \- Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE\_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.

            ----

            *Summary from comments*

            ----

             This is what will be implemented:
             1. list session (\[#1\]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}(\[#2\])
             2. by design they will not be listed in {{I_S.COLUMNS}} and other {{I_S}} tables (\[#3\])
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table (\[#4\]), not vice-versa.
             4. remove column {{"Temporary"}} in a separate commit

            References:
            \[#1\] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            \[#2\] \- Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            \[#3\] \- {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I\_S.PARTITIONS, {{I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            \[#4\] \- Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            elenst Elena Stepanova made changes -
            elenst Elena Stepanova made changes -
            elenst Elena Stepanova made changes -
            elenst Elena Stepanova made changes -
            anel Anel Husakovic made changes -
            Description Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE\_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.

            ----

            *Summary from comments*

            ----

             This is what will be implemented:
             1. list session (\[#1\]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}(\[#2\])
             2. by design they will not be listed in {{I_S.COLUMNS}} and other {{I_S}} tables (\[#3\])
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table (\[#4\]), not vice-versa.
             4. remove column {{"Temporary"}} in a separate commit

            References:
            \[#1\] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            \[#2\] \- Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            \[#3\] \- {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I\_S.PARTITIONS, {{I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            \[#4\] \- Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE\_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.

            ----

            *Summary from comments*

            ----

             This is what will be implemented:
             1. list session (\[#1\]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}(\[#2\])
             2. by design they will not be listed in {{I_S.COLUMNS}} and other {{I_S}} tables (\[#3\])
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table (\[#4\]), not vice-versa.

            References:
            \[#1\] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            \[#2\] \- Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            \[#3\] \- {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I\_S.PARTITIONS, {{I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            \[#4\] \- Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            elenst Elena Stepanova made changes -
            elenst Elena Stepanova made changes -
            elenst Elena Stepanova made changes -
            elenst Elena Stepanova made changes -
            elenst Elena Stepanova made changes -
            Assignee Elena Stepanova [ elenst ] Anel Husakovic [ anel ]
            Status In Testing [ 10301 ] Stalled [ 10000 ]
            elenst Elena Stepanova made changes -
            elenst Elena Stepanova made changes -
            ralf.gebhardt Ralf Gebhardt made changes -
            Fix Version/s 10.10 [ 27530 ]
            Fix Version/s 10.9 [ 26905 ]
            serg Sergei Golubchik made changes -
            Fix Version/s 10.11 [ 27614 ]
            Fix Version/s 10.10 [ 27530 ]
            anel Anel Husakovic made changes -
            Status Stalled [ 10000 ] In Progress [ 3 ]
            AirFocus AirFocus made changes -
            Description Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE\_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.

            ----

            *Summary from comments*

            ----

             This is what will be implemented:
             1. list session (\[#1\]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}(\[#2\])
             2. by design they will not be listed in {{I_S.COLUMNS}} and other {{I_S}} tables (\[#3\])
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table (\[#4\]), not vice-versa.

            References:
            \[#1\] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            \[#2\] \- Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            \[#3\] \- {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I\_S.PARTITIONS, {{I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            \[#4\] \- Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info\-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE\_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.

            ----

            *Summary from comments*

            ----

             This is what will be implemented:
             1. list session (\[#1\]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}(\[#2\])
             2. by design they will not be listed in {{I_S.COLUMNS}} and other {{I_S}} tables (\[#3\])
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table (\[#4\]), not vice-versa.

            References:
            \[#1\] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            \[#2\] \- Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            \[#3\] \- {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I\_S.PARTITIONS, {{I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            \[#4\] \- Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            julien.fritsch Julien Fritsch made changes -
            Description Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info\-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE\_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.

            ----

            *Summary from comments*

            ----

             This is what will be implemented:
             1. list session (\[#1\]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}(\[#2\])
             2. by design they will not be listed in {{I_S.COLUMNS}} and other {{I_S}} tables (\[#3\])
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table (\[#4\]), not vice-versa.

            References:
            \[#1\] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            \[#2\] \- Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            \[#3\] \- {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I\_S.PARTITIONS, {{I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            \[#4\] \- Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE\_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.

            ----

            *Summary from comments*

            ----

             This is what will be implemented:
             1. list session (\[#1\]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}(\[#2\])
             2. by design they will not be listed in {{I_S.COLUMNS}} and other {{I_S}} tables (\[#3\])
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table (\[#4\]), not vice-versa.

            References:
            \[#1\] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            \[#2\] \- Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            \[#3\] \- {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I\_S.PARTITIONS, {{I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            \[#4\] \- Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            ralf.gebhardt Ralf Gebhardt made changes -
            Fix Version/s 10.12 [ 28320 ]
            Fix Version/s 10.11 [ 27614 ]
            anel Anel Husakovic made changes -
            Description Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE\_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.

            ----

            *Summary from comments*

            ----

             This is what will be implemented:
             1. list session (\[#1\]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}(\[#2\])
             2. by design they will not be listed in {{I_S.COLUMNS}} and other {{I_S}} tables (\[#3\])
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table (\[#4\]), not vice-versa.

            References:
            \[#1\] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            \[#2\] \- Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            \[#3\] \- {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I\_S.PARTITIONS, {{I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            \[#4\] \- Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            Currently, before Mysql 5.7, there was no way to get information from a temporary table (session table) using the information_schema. Now with Mysql 5.7 there is a new table named 'INNODB_TEMP_TABLE_INFO'.

            According to documentation: https://mariadb.com/kb/en/mariadb/information-schema-temp_tables_info-table/

            There was a table names 'TEMP_TABLES_INFO' which was introduced in 10.2.2 but removed in 10.2.4. I think maybe you're thinking to implement another solution which can cover all the needs.

            The example shows how to use 'INNODB_TEMP_TABLE\_INFO' but it doesn't exist

            BTW that mysql's implementation is very limited, there no way you can query against temporary tables fields using a SELECT statement.

            ----

            *Summary from comments*

            ----

             This is what will be implemented:
             1. list session (\[#1\]) temporary tables in {{I_S.TABLES}} with column {{TABLE_TYPE="TEMPORARY"}}(\[#2\])
             2. by design they will not be listed in {{I_S.COLUMNS}} and other {{I_S}} tables (\[#3\]). This MDEV will not implement changes related to the temporary table and {{I_S.COLUMNS}} .
             3. issue a warning on {{CREATE}} if a new temp table shadows non-temp table (\[#4\]), not vice-versa.

            References:
            \[#1\] - No need for {{connection_id}} column to list all threads (MDEV-15623 should do that).
            \[#2\] \- Standard prescribes {{"GLOBAL TEMPORARY"}} or {{"LOCAL TEMPORARY"}} but our tables are neither, so let's just use {{"TEMPORARY"}}.
            \[#3\] \- {{I_S.COLUMNS}}, {{I_S.STATISTICS}}, {{I_S.TABLE_CONSTRAINTS}}, {{I_S.KEY_COLUMN_USAGE}}, I\_S.PARTITIONS, {{I_S.FILES}} ( ? ), {{I_S.CHECK_CONSTRAINTS}}. [Comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=167688&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-167688].
                    {{MariaDB}} should be also able to show their fields in {{INFORMATION_SCHEMA.COLUMNS}}, and any other metadata associated to a normal table. But at least, implementing {{INFORMATION_SCHEMA.TABLES}} and {{INFORMATION_SCHEMA.COLUMNS}} will help a lot.
            \[#4\] \- Based on [comment|https://jira.mariadb.org/browse/MDEV-12459?focusedCommentId=183124&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-183124]
            ralf.gebhardt Ralf Gebhardt made changes -
            Labels beginner-friendly foundation Preview_removed_10.9 beginner-friendly foundation
            anel Anel Husakovic made changes -
            Assignee Anel Husakovic [ anel ] Vicențiu Ciorbaru [ cvicentiu ]
            Status In Progress [ 3 ] In Review [ 10002 ]
            cvicentiu Vicențiu Ciorbaru made changes -
            Fix Version/s 11.1 [ 28549 ]
            Fix Version/s 11.0 [ 28320 ]
            ralf.gebhardt Ralf Gebhardt made changes -
            Labels Preview_removed_10.9 beginner-friendly foundation Preview_10.9 Preview_11.1 Preview_removed_10.9 beginner-friendly foundation
            ralf.gebhardt Ralf Gebhardt made changes -
            Labels Preview_10.9 Preview_11.1 Preview_removed_10.9 beginner-friendly foundation Preview_10.9 Preview_11.1 beginner-friendly foundation
            ralf.gebhardt Ralf Gebhardt made changes -
            Labels Preview_10.9 Preview_11.1 beginner-friendly foundation Preview_10.9 beginner-friendly foundation
            ralf.gebhardt Ralf Gebhardt made changes -
            Fix Version/s 11.2 [ 28603 ]
            Fix Version/s 11.1 [ 28549 ]
            cvicentiu Vicențiu Ciorbaru made changes -
            Assignee Vicențiu Ciorbaru [ cvicentiu ] Anel Husakovic [ anel ]
            Status In Review [ 10002 ] Stalled [ 10000 ]
            anel Anel Husakovic made changes -
            Assignee Anel Husakovic [ anel ] Vicențiu Ciorbaru [ cvicentiu ]
            Status Stalled [ 10000 ] In Review [ 10002 ]
            serg Sergei Golubchik made changes -
            Status In Review [ 10002 ] In Testing [ 10301 ]
            serg Sergei Golubchik made changes -
            Assignee Vicențiu Ciorbaru [ cvicentiu ] Ramesh Sivaraman [ JIRAUSER48189 ]
            alice Alice Sherepa made changes -
            Assignee Ramesh Sivaraman [ JIRAUSER48189 ] Alice Sherepa [ alice ]
            ralf.gebhardt Ralf Gebhardt made changes -
            Labels Preview_10.9 beginner-friendly foundation Preview_10.9 Preview_11.2 beginner-friendly foundation
            alice Alice Sherepa made changes -
            alice Alice Sherepa made changes -
            serg Sergei Golubchik made changes -
            serg Sergei Golubchik made changes -
            serg Sergei Golubchik made changes -
            alice Alice Sherepa made changes -
            Status In Testing [ 10301 ] Stalled [ 10000 ]
            alice Alice Sherepa made changes -
            Assignee Alice Sherepa [ alice ] Sergei Golubchik [ serg ]
            serg Sergei Golubchik made changes -
            Fix Version/s 11.2.1 [ 29034 ]
            Fix Version/s 11.2 [ 28603 ]
            Assignee Sergei Golubchik [ serg ] Anel Husakovic [ anel ]
            Resolution Fixed [ 1 ]
            Status Stalled [ 10000 ] Closed [ 6 ]
            serg Sergei Golubchik made changes -
            Component/s Information Schema [ 14413 ]
            diego dupin Diego Dupin made changes -
            rob.schwyzer@mariadb.com Rob Schwyzer (Inactive) made changes -
            rob.schwyzer@mariadb.com Rob Schwyzer (Inactive) made changes -
            mariadb-jira-automation Jira Automation (IT) made changes -
            Zendesk Related Tickets 190605

            People

              anel Anel Husakovic
              fduenas Francisco Dueñas
              Votes:
              6 Vote for this issue
              Watchers:
              21 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.