diff --git a/src/catalog/src/information_schema.rs b/src/catalog/src/information_schema.rs index 89d6e4afd9e1..c39de7c4881a 100644 --- a/src/catalog/src/information_schema.rs +++ b/src/catalog/src/information_schema.rs @@ -24,7 +24,7 @@ mod tables; use std::collections::HashMap; use std::sync::{Arc, Weak}; -use common_catalog::consts::{self, INFORMATION_SCHEMA_NAME}; +use common_catalog::consts::{self, DEFAULT_CATALOG_NAME, INFORMATION_SCHEMA_NAME}; use common_error::ext::BoxedError; use common_recordbatch::{RecordBatchStreamWrapper, SendableRecordBatchStream}; use datatypes::schema::SchemaRef; @@ -58,7 +58,6 @@ lazy_static! { ENGINES, COLUMN_PRIVILEGES, COLUMN_STATISTICS, - BUILD_INFO, CHARACTER_SETS, COLLATIONS, COLLATION_CHARACTER_SET_APPLICABILITY, @@ -144,13 +143,24 @@ impl InformationSchemaProvider { fn build_tables(&mut self) { let mut tables = HashMap::new(); + + // Carefully consider the tables that may expose sensitive cluster configurations, + // authentication details, and other critical information. + // Only put these tables under `greptime` catalog to prevent info leak. + if self.catalog_name == DEFAULT_CATALOG_NAME { + tables.insert( + RUNTIME_METRICS.to_string(), + self.build_table(RUNTIME_METRICS).unwrap(), + ); + tables.insert( + BUILD_INFO.to_string(), + self.build_table(BUILD_INFO).unwrap(), + ); + } + tables.insert(TABLES.to_string(), self.build_table(TABLES).unwrap()); tables.insert(SCHEMATA.to_string(), self.build_table(SCHEMATA).unwrap()); tables.insert(COLUMNS.to_string(), self.build_table(COLUMNS).unwrap()); - tables.insert( - RUNTIME_METRICS.to_string(), - self.build_table(RUNTIME_METRICS).unwrap(), - ); tables.insert( KEY_COLUMN_USAGE.to_string(), self.build_table(KEY_COLUMN_USAGE).unwrap(), diff --git a/tests/cases/standalone/common/show/show_databases_tables.result b/tests/cases/standalone/common/show/show_databases_tables.result index 3663d575a07e..c61743d193a3 100644 --- a/tests/cases/standalone/common/show/show_databases_tables.result +++ b/tests/cases/standalone/common/show/show_databases_tables.result @@ -20,7 +20,6 @@ show tables; +---------------------------------------+ | Tables | +---------------------------------------+ -| build_info | | character_sets | | check_constraints | | collation_character_set_applicability | @@ -38,7 +37,6 @@ show tables; | profiling | | referential_constraints | | routines | -| runtime_metrics | | schema_privileges | | schemata | | session_status | diff --git a/tests/cases/standalone/common/system/information_schema.result b/tests/cases/standalone/common/system/information_schema.result index 891f60faa34f..fa19e889a25e 100644 --- a/tests/cases/standalone/common/system/information_schema.result +++ b/tests/cases/standalone/common/system/information_schema.result @@ -12,7 +12,6 @@ order by table_schema, table_name; +---------------+--------------------+---------------------------------------+-----------------+----------+-------------+ | table_catalog | table_schema | table_name | table_type | table_id | engine | +---------------+--------------------+---------------------------------------+-----------------+----------+-------------+ -| greptime | information_schema | build_info | LOCAL TEMPORARY | 8 | | | greptime | information_schema | character_sets | LOCAL TEMPORARY | 9 | | | greptime | information_schema | check_constraints | LOCAL TEMPORARY | 12 | | | greptime | information_schema | collation_character_set_applicability | LOCAL TEMPORARY | 11 | | @@ -30,7 +29,6 @@ order by table_schema, table_name; | greptime | information_schema | profiling | LOCAL TEMPORARY | 19 | | | greptime | information_schema | referential_constraints | LOCAL TEMPORARY | 20 | | | greptime | information_schema | routines | LOCAL TEMPORARY | 21 | | -| greptime | information_schema | runtime_metrics | LOCAL TEMPORARY | 27 | | | greptime | information_schema | schema_privileges | LOCAL TEMPORARY | 22 | | | greptime | information_schema | schemata | LOCAL TEMPORARY | 15 | | | greptime | information_schema | session_status | LOCAL TEMPORARY | 26 | | @@ -40,264 +38,254 @@ order by table_schema, table_name; | greptime | public | numbers | LOCAL TEMPORARY | 2 | test_engine | +---------------+--------------------+---------------------------------------+-----------------+----------+-------------+ -select * from information_schema.columns order by table_schema, table_name; +select * from information_schema.columns order by table_schema, table_name, column_name; +---------------+--------------------+---------------------------------------+-----------------------------------+-----------+---------------+----------------+-------------+-------------+----------------+ | table_catalog | table_schema | table_name | column_name | data_type | semantic_type | column_default | is_nullable | column_type | column_comment | +---------------+--------------------+---------------------------------------+-----------------------------------+-----------+---------------+----------------+-------------+-------------+----------------+ -| greptime | information_schema | build_info | git_branch | String | FIELD | | No | String | | -| greptime | information_schema | build_info | git_commit | String | FIELD | | No | String | | -| greptime | information_schema | build_info | git_commit_short | String | FIELD | | No | String | | -| greptime | information_schema | build_info | git_dirty | String | FIELD | | No | String | | -| greptime | information_schema | build_info | pkg_version | String | FIELD | | No | String | | -| greptime | information_schema | character_sets | default_collate_name | String | FIELD | | No | String | | | greptime | information_schema | character_sets | character_set_name | String | FIELD | | No | String | | -| greptime | information_schema | character_sets | maxlen | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | character_sets | default_collate_name | String | FIELD | | No | String | | | greptime | information_schema | character_sets | description | String | FIELD | | No | String | | +| greptime | information_schema | character_sets | maxlen | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | check_constraints | check_clause | String | FIELD | | No | String | | +| greptime | information_schema | check_constraints | constraint_catalog | String | FIELD | | No | String | | | greptime | information_schema | check_constraints | constraint_name | String | FIELD | | No | String | | | greptime | information_schema | check_constraints | constraint_schema | String | FIELD | | No | String | | -| greptime | information_schema | check_constraints | constraint_catalog | String | FIELD | | No | String | | | greptime | information_schema | collation_character_set_applicability | character_set_name | String | FIELD | | No | String | | | greptime | information_schema | collation_character_set_applicability | collation_name | String | FIELD | | No | String | | -| greptime | information_schema | collations | collation_name | String | FIELD | | No | String | | -| greptime | information_schema | collations | sortlen | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | collations | character_set_name | String | FIELD | | No | String | | +| greptime | information_schema | collations | collation_name | String | FIELD | | No | String | | | greptime | information_schema | collations | id | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | collations | is_default | String | FIELD | | No | String | | | greptime | information_schema | collations | is_compiled | String | FIELD | | No | String | | -| greptime | information_schema | column_privileges | table_schema | String | FIELD | | No | String | | -| greptime | information_schema | column_privileges | table_catalog | String | FIELD | | No | String | | -| greptime | information_schema | column_privileges | grantee | String | FIELD | | No | String | | -| greptime | information_schema | column_privileges | table_name | String | FIELD | | No | String | | +| greptime | information_schema | collations | is_default | String | FIELD | | No | String | | +| greptime | information_schema | collations | sortlen | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | column_privileges | column_name | String | FIELD | | No | String | | -| greptime | information_schema | column_privileges | privilege_type | String | FIELD | | No | String | | +| greptime | information_schema | column_privileges | grantee | String | FIELD | | No | String | | | greptime | information_schema | column_privileges | is_grantable | String | FIELD | | No | String | | +| greptime | information_schema | column_privileges | privilege_type | String | FIELD | | No | String | | +| greptime | information_schema | column_privileges | table_catalog | String | FIELD | | No | String | | +| greptime | information_schema | column_privileges | table_name | String | FIELD | | No | String | | +| greptime | information_schema | column_privileges | table_schema | String | FIELD | | No | String | | +| greptime | information_schema | column_statistics | column_name | String | FIELD | | No | String | | | greptime | information_schema | column_statistics | histogram | String | FIELD | | No | String | | | greptime | information_schema | column_statistics | schema_name | String | FIELD | | No | String | | | greptime | information_schema | column_statistics | table_name | String | FIELD | | No | String | | -| greptime | information_schema | column_statistics | column_name | String | FIELD | | No | String | | -| greptime | information_schema | columns | column_type | String | FIELD | | No | String | | | greptime | information_schema | columns | column_comment | String | FIELD | | Yes | String | | -| greptime | information_schema | columns | table_name | String | FIELD | | No | String | | -| greptime | information_schema | columns | is_nullable | String | FIELD | | No | String | | | greptime | information_schema | columns | column_default | String | FIELD | | Yes | String | | +| greptime | information_schema | columns | column_name | String | FIELD | | No | String | | +| greptime | information_schema | columns | column_type | String | FIELD | | No | String | | +| greptime | information_schema | columns | data_type | String | FIELD | | No | String | | +| greptime | information_schema | columns | is_nullable | String | FIELD | | No | String | | | greptime | information_schema | columns | semantic_type | String | FIELD | | No | String | | -| greptime | information_schema | columns | table_schema | String | FIELD | | No | String | | | greptime | information_schema | columns | table_catalog | String | FIELD | | No | String | | -| greptime | information_schema | columns | data_type | String | FIELD | | No | String | | -| greptime | information_schema | columns | column_name | String | FIELD | | No | String | | -| greptime | information_schema | engines | savepoints | String | FIELD | | No | String | | -| greptime | information_schema | engines | xa | String | FIELD | | No | String | | -| greptime | information_schema | engines | transactions | String | FIELD | | No | String | | +| greptime | information_schema | columns | table_name | String | FIELD | | No | String | | +| greptime | information_schema | columns | table_schema | String | FIELD | | No | String | | | greptime | information_schema | engines | comment | String | FIELD | | No | String | | -| greptime | information_schema | engines | support | String | FIELD | | No | String | | | greptime | information_schema | engines | engine | String | FIELD | | No | String | | -| greptime | information_schema | events | event_name | String | FIELD | | No | String | | -| greptime | information_schema | events | last_executed | DateTime | FIELD | | No | DateTime | | -| greptime | information_schema | events | database_collation | String | FIELD | | No | String | | -| greptime | information_schema | events | collation_connection | String | FIELD | | No | String | | +| greptime | information_schema | engines | savepoints | String | FIELD | | No | String | | +| greptime | information_schema | engines | support | String | FIELD | | No | String | | +| greptime | information_schema | engines | transactions | String | FIELD | | No | String | | +| greptime | information_schema | engines | xa | String | FIELD | | No | String | | | greptime | information_schema | events | character_set_client | String | FIELD | | No | String | | -| greptime | information_schema | events | originator | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | events | event_catalog | String | FIELD | | No | String | | -| greptime | information_schema | events | event_schema | String | FIELD | | No | String | | -| greptime | information_schema | events | event_comment | String | FIELD | | No | String | | +| greptime | information_schema | events | collation_connection | String | FIELD | | No | String | | +| greptime | information_schema | events | created | DateTime | FIELD | | No | DateTime | | +| greptime | information_schema | events | database_collation | String | FIELD | | No | String | | | greptime | information_schema | events | definer | String | FIELD | | No | String | | -| greptime | information_schema | events | time_zone | String | FIELD | | No | String | | +| greptime | information_schema | events | ends | DateTime | FIELD | | No | DateTime | | | greptime | information_schema | events | event_body | String | FIELD | | No | String | | +| greptime | information_schema | events | event_catalog | String | FIELD | | No | String | | +| greptime | information_schema | events | event_comment | String | FIELD | | No | String | | | greptime | information_schema | events | event_definition | String | FIELD | | No | String | | +| greptime | information_schema | events | event_name | String | FIELD | | No | String | | +| greptime | information_schema | events | event_schema | String | FIELD | | No | String | | | greptime | information_schema | events | event_type | String | FIELD | | No | String | | | greptime | information_schema | events | execute_at | DateTime | FIELD | | No | DateTime | | -| greptime | information_schema | events | interval_value | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | events | interval_field | String | FIELD | | No | String | | +| greptime | information_schema | events | interval_value | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | events | last_altered | DateTime | FIELD | | No | DateTime | | +| greptime | information_schema | events | last_executed | DateTime | FIELD | | No | DateTime | | +| greptime | information_schema | events | on_completion | String | FIELD | | No | String | | +| greptime | information_schema | events | originator | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | events | sql_mode | String | FIELD | | No | String | | | greptime | information_schema | events | starts | DateTime | FIELD | | No | DateTime | | -| greptime | information_schema | events | ends | DateTime | FIELD | | No | DateTime | | | greptime | information_schema | events | status | String | FIELD | | No | String | | -| greptime | information_schema | events | on_completion | String | FIELD | | No | String | | -| greptime | information_schema | events | created | DateTime | FIELD | | No | DateTime | | -| greptime | information_schema | events | last_altered | DateTime | FIELD | | No | DateTime | | -| greptime | information_schema | files | file_name | String | FIELD | | No | String | | -| greptime | information_schema | files | free_extents | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | files | update_time | DateTime | FIELD | | No | DateTime | | -| greptime | information_schema | files | create_time | DateTime | FIELD | | No | DateTime | | +| greptime | information_schema | events | time_zone | String | FIELD | | No | String | | +| greptime | information_schema | files | autoextend_size | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | files | avg_row_length | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | files | check_time | DateTime | FIELD | | No | DateTime | | | greptime | information_schema | files | checksum | String | FIELD | | No | String | | -| greptime | information_schema | files | status | String | FIELD | | No | String | | +| greptime | information_schema | files | create_time | DateTime | FIELD | | No | DateTime | | +| greptime | information_schema | files | creation_time | DateTime | FIELD | | No | DateTime | | +| greptime | information_schema | files | data_free | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | files | data_length | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | files | deleted_rows | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | files | engine | String | FIELD | | No | String | | +| greptime | information_schema | files | extent_size | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | files | extra | String | FIELD | | No | String | | | greptime | information_schema | files | file_id | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | files | check_time | DateTime | FIELD | | No | DateTime | | +| greptime | information_schema | files | file_name | String | FIELD | | No | String | | | greptime | information_schema | files | file_type | String | FIELD | | No | String | | -| greptime | information_schema | files | tablespace_name | String | FIELD | | No | String | | -| greptime | information_schema | files | table_catalog | String | FIELD | | No | String | | -| greptime | information_schema | files | table_schema | String | FIELD | | No | String | | -| greptime | information_schema | files | table_name | String | FIELD | | No | String | | -| greptime | information_schema | files | logfile_group_name | String | FIELD | | No | String | | -| greptime | information_schema | files | logfile_group_number | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | files | engine | String | FIELD | | No | String | | +| greptime | information_schema | files | free_extents | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | files | fulltext_keys | String | FIELD | | No | String | | -| greptime | information_schema | files | deleted_rows | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | files | update_count | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | files | extra | String | FIELD | | No | String | | -| greptime | information_schema | files | total_extents | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | files | extent_size | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | files | index_length | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | files | initial_size | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | files | maximum_size | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | files | autoextend_size | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | files | creation_time | DateTime | FIELD | | No | DateTime | | -| greptime | information_schema | files | last_update_time | DateTime | FIELD | | No | DateTime | | | greptime | information_schema | files | last_access_time | DateTime | FIELD | | No | DateTime | | +| greptime | information_schema | files | last_update_time | DateTime | FIELD | | No | DateTime | | +| greptime | information_schema | files | logfile_group_name | String | FIELD | | No | String | | +| greptime | information_schema | files | logfile_group_number | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | files | max_data_length | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | files | maximum_size | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | files | recover_time | DateTime | FIELD | | No | DateTime | | -| greptime | information_schema | files | transaction_counter | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | files | version | String | FIELD | | No | String | | | greptime | information_schema | files | row_format | String | FIELD | | No | String | | +| greptime | information_schema | files | status | String | FIELD | | No | String | | +| greptime | information_schema | files | table_catalog | String | FIELD | | No | String | | +| greptime | information_schema | files | table_name | String | FIELD | | No | String | | | greptime | information_schema | files | table_rows | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | files | avg_row_length | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | files | data_length | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | files | max_data_length | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | files | index_length | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | files | data_free | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | files | table_schema | String | FIELD | | No | String | | +| greptime | information_schema | files | tablespace_name | String | FIELD | | No | String | | +| greptime | information_schema | files | total_extents | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | files | transaction_counter | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | files | update_count | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | files | update_time | DateTime | FIELD | | No | DateTime | | +| greptime | information_schema | files | version | String | FIELD | | No | String | | | greptime | information_schema | global_status | variable_name | String | FIELD | | No | String | | | greptime | information_schema | global_status | variable_value | String | FIELD | | No | String | | +| greptime | information_schema | key_column_usage | column_name | String | FIELD | | No | String | | +| greptime | information_schema | key_column_usage | constraint_catalog | String | FIELD | | No | String | | +| greptime | information_schema | key_column_usage | constraint_name | String | FIELD | | No | String | | +| greptime | information_schema | key_column_usage | constraint_schema | String | FIELD | | No | String | | | greptime | information_schema | key_column_usage | ordinal_position | UInt32 | FIELD | | No | UInt32 | | | greptime | information_schema | key_column_usage | position_in_unique_constraint | UInt32 | FIELD | | Yes | UInt32 | | | greptime | information_schema | key_column_usage | referenced_column_name | String | FIELD | | Yes | String | | | greptime | information_schema | key_column_usage | referenced_table_name | String | FIELD | | Yes | String | | | greptime | information_schema | key_column_usage | referenced_table_schema | String | FIELD | | Yes | String | | -| greptime | information_schema | key_column_usage | constraint_catalog | String | FIELD | | No | String | | -| greptime | information_schema | key_column_usage | constraint_schema | String | FIELD | | No | String | | -| greptime | information_schema | key_column_usage | constraint_name | String | FIELD | | No | String | | | greptime | information_schema | key_column_usage | table_catalog | String | FIELD | | No | String | | -| greptime | information_schema | key_column_usage | table_schema | String | FIELD | | No | String | | | greptime | information_schema | key_column_usage | table_name | String | FIELD | | No | String | | -| greptime | information_schema | key_column_usage | column_name | String | FIELD | | No | String | | +| greptime | information_schema | key_column_usage | table_schema | String | FIELD | | No | String | | | greptime | information_schema | optimizer_trace | insufficient_privileges | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | optimizer_trace | missing_bytes_beyond_max_mem_size | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | optimizer_trace | trace | String | FIELD | | No | String | | | greptime | information_schema | optimizer_trace | query | String | FIELD | | No | String | | -| greptime | information_schema | parameters | data_type | String | FIELD | | No | String | | -| greptime | information_schema | parameters | dtd_identifier | String | FIELD | | No | String | | -| greptime | information_schema | parameters | routine_type | String | FIELD | | No | String | | -| greptime | information_schema | parameters | collation_name | String | FIELD | | No | String | | +| greptime | information_schema | optimizer_trace | trace | String | FIELD | | No | String | | +| greptime | information_schema | parameters | character_maximum_length | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | parameters | character_octet_length | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | parameters | character_set_name | String | FIELD | | No | String | | +| greptime | information_schema | parameters | collation_name | String | FIELD | | No | String | | +| greptime | information_schema | parameters | data_type | String | FIELD | | No | String | | | greptime | information_schema | parameters | datetime_precision | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | parameters | numeric_scale | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | parameters | dtd_identifier | String | FIELD | | No | String | | | greptime | information_schema | parameters | numeric_precision | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | parameters | character_octet_length | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | parameters | specific_catalog | String | FIELD | | No | String | | -| greptime | information_schema | parameters | specific_schema | String | FIELD | | No | String | | -| greptime | information_schema | parameters | specific_name | String | FIELD | | No | String | | +| greptime | information_schema | parameters | numeric_scale | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | parameters | ordinal_position | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | parameters | parameter_mode | String | FIELD | | No | String | | | greptime | information_schema | parameters | parameter_name | String | FIELD | | No | String | | -| greptime | information_schema | parameters | character_maximum_length | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | profiling | page_faults_major | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | profiling | page_faults_minor | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | profiling | source_line | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | profiling | source_file | String | FIELD | | No | String | | -| greptime | information_schema | profiling | source_function | String | FIELD | | No | String | | -| greptime | information_schema | profiling | swaps | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | parameters | routine_type | String | FIELD | | No | String | | +| greptime | information_schema | parameters | specific_catalog | String | FIELD | | No | String | | +| greptime | information_schema | parameters | specific_name | String | FIELD | | No | String | | +| greptime | information_schema | parameters | specific_schema | String | FIELD | | No | String | | +| greptime | information_schema | profiling | block_ops_in | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | profiling | block_ops_out | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | profiling | context_involuntary | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | profiling | messages_received | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | profiling | context_voluntary | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | profiling | cpu_system | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | profiling | cpu_user | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | profiling | duration | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | profiling | messages_received | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | profiling | messages_sent | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | profiling | page_faults_major | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | profiling | page_faults_minor | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | profiling | query_id | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | profiling | seq | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | profiling | source_file | String | FIELD | | No | String | | +| greptime | information_schema | profiling | source_function | String | FIELD | | No | String | | +| greptime | information_schema | profiling | source_line | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | profiling | state | String | FIELD | | No | String | | -| greptime | information_schema | profiling | duration | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | profiling | cpu_user | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | profiling | block_ops_out | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | profiling | messages_sent | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | profiling | cpu_system | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | profiling | block_ops_in | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | referential_constraints | table_name | String | FIELD | | No | String | | +| greptime | information_schema | profiling | swaps | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | referential_constraints | constraint_catalog | String | FIELD | | No | String | | +| greptime | information_schema | referential_constraints | constraint_name | String | FIELD | | No | String | | +| greptime | information_schema | referential_constraints | constraint_schema | String | FIELD | | No | String | | +| greptime | information_schema | referential_constraints | delete_rule | String | FIELD | | No | String | | +| greptime | information_schema | referential_constraints | match_option | String | FIELD | | No | String | | | greptime | information_schema | referential_constraints | referenced_table_name | String | FIELD | | No | String | | +| greptime | information_schema | referential_constraints | table_name | String | FIELD | | No | String | | | greptime | information_schema | referential_constraints | unique_constraint_catalog | String | FIELD | | No | String | | -| greptime | information_schema | referential_constraints | constraint_name | String | FIELD | | No | String | | -| greptime | information_schema | referential_constraints | unique_constraint_schema | String | FIELD | | No | String | | | greptime | information_schema | referential_constraints | unique_constraint_name | String | FIELD | | No | String | | -| greptime | information_schema | referential_constraints | match_option | String | FIELD | | No | String | | +| greptime | information_schema | referential_constraints | unique_constraint_schema | String | FIELD | | No | String | | | greptime | information_schema | referential_constraints | update_rule | String | FIELD | | No | String | | -| greptime | information_schema | referential_constraints | delete_rule | String | FIELD | | No | String | | -| greptime | information_schema | referential_constraints | constraint_catalog | String | FIELD | | No | String | | -| greptime | information_schema | referential_constraints | constraint_schema | String | FIELD | | No | String | | -| greptime | information_schema | routines | routine_catalog | String | FIELD | | No | String | | -| greptime | information_schema | routines | numeric_precision | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | routines | routine_comment | String | FIELD | | No | String | | -| greptime | information_schema | routines | sql_mode | String | FIELD | | No | String | | -| greptime | information_schema | routines | last_altered | DateTime | FIELD | | No | DateTime | | -| greptime | information_schema | routines | created | DateTime | FIELD | | No | DateTime | | -| greptime | information_schema | routines | security_type | String | FIELD | | No | String | | -| greptime | information_schema | routines | character_set_client | String | FIELD | | No | String | | -| greptime | information_schema | routines | collation_connection | String | FIELD | | No | String | | -| greptime | information_schema | routines | specific_name | String | FIELD | | No | String | | -| greptime | information_schema | routines | database_collation | String | FIELD | | No | String | | -| greptime | information_schema | routines | routine_schema | String | FIELD | | No | String | | -| greptime | information_schema | routines | routine_name | String | FIELD | | No | String | | -| greptime | information_schema | routines | routine_type | String | FIELD | | No | String | | -| greptime | information_schema | routines | data_type | String | FIELD | | No | String | | | greptime | information_schema | routines | character_maximum_length | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | routines | character_octet_length | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | routines | definer | String | FIELD | | No | String | | -| greptime | information_schema | routines | numeric_scale | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | routines | datetime_precision | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | routines | character_set_client | String | FIELD | | No | String | | | greptime | information_schema | routines | character_set_name | String | FIELD | | No | String | | +| greptime | information_schema | routines | collation_connection | String | FIELD | | No | String | | | greptime | information_schema | routines | collation_name | String | FIELD | | No | String | | +| greptime | information_schema | routines | created | DateTime | FIELD | | No | DateTime | | +| greptime | information_schema | routines | data_type | String | FIELD | | No | String | | +| greptime | information_schema | routines | database_collation | String | FIELD | | No | String | | +| greptime | information_schema | routines | datetime_precision | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | routines | definer | String | FIELD | | No | String | | | greptime | information_schema | routines | dtd_identifier | String | FIELD | | No | String | | -| greptime | information_schema | routines | routine_body | String | FIELD | | No | String | | -| greptime | information_schema | routines | routine_definition | String | FIELD | | No | String | | -| greptime | information_schema | routines | external_name | String | FIELD | | No | String | | | greptime | information_schema | routines | external_language | String | FIELD | | No | String | | -| greptime | information_schema | routines | parameter_style | String | FIELD | | No | String | | +| greptime | information_schema | routines | external_name | String | FIELD | | No | String | | | greptime | information_schema | routines | is_deterministic | String | FIELD | | No | String | | +| greptime | information_schema | routines | last_altered | DateTime | FIELD | | No | DateTime | | +| greptime | information_schema | routines | numeric_precision | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | routines | numeric_scale | Int64 | FIELD | | No | Int64 | | +| greptime | information_schema | routines | parameter_style | String | FIELD | | No | String | | +| greptime | information_schema | routines | routine_body | String | FIELD | | No | String | | +| greptime | information_schema | routines | routine_catalog | String | FIELD | | No | String | | +| greptime | information_schema | routines | routine_comment | String | FIELD | | No | String | | +| greptime | information_schema | routines | routine_definition | String | FIELD | | No | String | | +| greptime | information_schema | routines | routine_name | String | FIELD | | No | String | | +| greptime | information_schema | routines | routine_schema | String | FIELD | | No | String | | +| greptime | information_schema | routines | routine_type | String | FIELD | | No | String | | +| greptime | information_schema | routines | security_type | String | FIELD | | No | String | | +| greptime | information_schema | routines | specific_name | String | FIELD | | No | String | | | greptime | information_schema | routines | sql_data_access | String | FIELD | | No | String | | +| greptime | information_schema | routines | sql_mode | String | FIELD | | No | String | | | greptime | information_schema | routines | sql_path | String | FIELD | | No | String | | -| greptime | information_schema | runtime_metrics | metric_name | String | FIELD | | No | String | | -| greptime | information_schema | runtime_metrics | value | Float64 | FIELD | | No | Float64 | | -| greptime | information_schema | runtime_metrics | labels | String | FIELD | | Yes | String | | -| greptime | information_schema | runtime_metrics | node | String | FIELD | | No | String | | -| greptime | information_schema | runtime_metrics | node_type | String | FIELD | | No | String | | -| greptime | information_schema | schema_privileges | table_catalog | String | FIELD | | No | String | | -| greptime | information_schema | schema_privileges | table_schema | String | FIELD | | No | String | | +| greptime | information_schema | schema_privileges | grantee | String | FIELD | | No | String | | | greptime | information_schema | schema_privileges | is_grantable | String | FIELD | | No | String | | | greptime | information_schema | schema_privileges | privilege_type | String | FIELD | | No | String | | -| greptime | information_schema | schema_privileges | grantee | String | FIELD | | No | String | | -| greptime | information_schema | schemata | default_collation_name | String | FIELD | | No | String | | -| greptime | information_schema | schemata | sql_path | String | FIELD | | Yes | String | | +| greptime | information_schema | schema_privileges | table_catalog | String | FIELD | | No | String | | +| greptime | information_schema | schema_privileges | table_schema | String | FIELD | | No | String | | +| greptime | information_schema | schemata | catalog_name | String | FIELD | | No | String | | | greptime | information_schema | schemata | default_character_set_name | String | FIELD | | No | String | | +| greptime | information_schema | schemata | default_collation_name | String | FIELD | | No | String | | | greptime | information_schema | schemata | schema_name | String | FIELD | | No | String | | -| greptime | information_schema | schemata | catalog_name | String | FIELD | | No | String | | -| greptime | information_schema | session_status | variable_value | String | FIELD | | No | String | | +| greptime | information_schema | schemata | sql_path | String | FIELD | | Yes | String | | | greptime | information_schema | session_status | variable_name | String | FIELD | | No | String | | +| greptime | information_schema | session_status | variable_value | String | FIELD | | No | String | | | greptime | information_schema | table_privileges | grantee | String | FIELD | | No | String | | +| greptime | information_schema | table_privileges | is_grantable | String | FIELD | | No | String | | +| greptime | information_schema | table_privileges | privilege_type | String | FIELD | | No | String | | | greptime | information_schema | table_privileges | table_catalog | String | FIELD | | No | String | | -| greptime | information_schema | table_privileges | table_schema | String | FIELD | | No | String | | | greptime | information_schema | table_privileges | table_name | String | FIELD | | No | String | | -| greptime | information_schema | table_privileges | privilege_type | String | FIELD | | No | String | | -| greptime | information_schema | table_privileges | is_grantable | String | FIELD | | No | String | | -| greptime | information_schema | tables | table_id | UInt32 | FIELD | | Yes | UInt32 | | +| greptime | information_schema | table_privileges | table_schema | String | FIELD | | No | String | | | greptime | information_schema | tables | engine | String | FIELD | | Yes | String | | -| greptime | information_schema | tables | table_type | String | FIELD | | No | String | | -| greptime | information_schema | tables | table_name | String | FIELD | | No | String | | | greptime | information_schema | tables | table_catalog | String | FIELD | | No | String | | +| greptime | information_schema | tables | table_id | UInt32 | FIELD | | Yes | UInt32 | | +| greptime | information_schema | tables | table_name | String | FIELD | | No | String | | | greptime | information_schema | tables | table_schema | String | FIELD | | No | String | | +| greptime | information_schema | tables | table_type | String | FIELD | | No | String | | | greptime | information_schema | triggers | action_condition | String | FIELD | | No | String | | +| greptime | information_schema | triggers | action_order | Int64 | FIELD | | No | Int64 | | | greptime | information_schema | triggers | action_orientation | String | FIELD | | No | String | | -| greptime | information_schema | triggers | action_timing | String | FIELD | | No | String | | -| greptime | information_schema | triggers | action_reference_old_table | String | FIELD | | No | String | | +| greptime | information_schema | triggers | action_reference_new_row | String | FIELD | | No | String | | | greptime | information_schema | triggers | action_reference_new_table | String | FIELD | | No | String | | | greptime | information_schema | triggers | action_reference_old_row | String | FIELD | | No | String | | -| greptime | information_schema | triggers | action_reference_new_row | String | FIELD | | No | String | | -| greptime | information_schema | triggers | created | DateTime | FIELD | | No | DateTime | | -| greptime | information_schema | triggers | sql_mode | String | FIELD | | No | String | | -| greptime | information_schema | triggers | definer | String | FIELD | | No | String | | +| greptime | information_schema | triggers | action_reference_old_table | String | FIELD | | No | String | | +| greptime | information_schema | triggers | action_statement | String | FIELD | | No | String | | +| greptime | information_schema | triggers | action_timing | String | FIELD | | No | String | | | greptime | information_schema | triggers | character_set_client | String | FIELD | | No | String | | | greptime | information_schema | triggers | collation_connection | String | FIELD | | No | String | | +| greptime | information_schema | triggers | created | DateTime | FIELD | | No | DateTime | | | greptime | information_schema | triggers | database_collation | String | FIELD | | No | String | | -| greptime | information_schema | triggers | trigger_catalog | String | FIELD | | No | String | | -| greptime | information_schema | triggers | action_statement | String | FIELD | | No | String | | -| greptime | information_schema | triggers | action_order | Int64 | FIELD | | No | Int64 | | -| greptime | information_schema | triggers | event_object_table | String | FIELD | | No | String | | -| greptime | information_schema | triggers | event_object_schema | String | FIELD | | No | String | | -| greptime | information_schema | triggers | event_object_catalog | String | FIELD | | No | String | | +| greptime | information_schema | triggers | definer | String | FIELD | | No | String | | | greptime | information_schema | triggers | event_manipulation | String | FIELD | | No | String | | +| greptime | information_schema | triggers | event_object_catalog | String | FIELD | | No | String | | +| greptime | information_schema | triggers | event_object_schema | String | FIELD | | No | String | | +| greptime | information_schema | triggers | event_object_table | String | FIELD | | No | String | | +| greptime | information_schema | triggers | sql_mode | String | FIELD | | No | String | | +| greptime | information_schema | triggers | trigger_catalog | String | FIELD | | No | String | | | greptime | information_schema | triggers | trigger_name | String | FIELD | | No | String | | | greptime | information_schema | triggers | trigger_schema | String | FIELD | | No | String | | | greptime | public | numbers | number | UInt32 | TAG | | No | UInt32 | | diff --git a/tests/cases/standalone/common/system/information_schema.sql b/tests/cases/standalone/common/system/information_schema.sql index b7a461880f6a..c1109beab8aa 100644 --- a/tests/cases/standalone/common/system/information_schema.sql +++ b/tests/cases/standalone/common/system/information_schema.sql @@ -7,7 +7,7 @@ from information_schema.tables where table_name != 'scripts' order by table_schema, table_name; -select * from information_schema.columns order by table_schema, table_name; +select * from information_schema.columns order by table_schema, table_name, column_name; create database my_db;