You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by mo...@apache.org on 2023/02/08 16:32:30 UTC
[doris] 02/12: [improvement](compatibility) add DATA_TYPE in information schema for new types #16391
This is an automated email from the ASF dual-hosted git repository.
morningman pushed a commit to branch branch-1.2-lts
in repository https://gitbox.apache.org/repos/asf/doris.git
commit e10eb6d3ad06b524e52cdd5c360d7c44e6351a21
Author: Kang <kx...@gmail.com>
AuthorDate: Fri Feb 3 22:28:42 2023 +0800
[improvement](compatibility) add DATA_TYPE in information schema for new types #16391
Add DATA_TYPE in information schema for types: datev2, datatimev2, decimal, jsonb. It was 'unknown' for these types and cause problem for tools such as BI using information schema.
---
.../exec/schema_scanner/schema_columns_scanner.cpp | 11 +++++++++++
.../scalar_types/sql/infomation_schema.out | 21 +++++++++++++++++++++
.../scalar_types/sql/infomation_schema.sql | 1 +
3 files changed, 33 insertions(+)
diff --git a/be/src/exec/schema_scanner/schema_columns_scanner.cpp b/be/src/exec/schema_scanner/schema_columns_scanner.cpp
index fcf78542bf..c471a5f98a 100644
--- a/be/src/exec/schema_scanner/schema_columns_scanner.cpp
+++ b/be/src/exec/schema_scanner/schema_columns_scanner.cpp
@@ -119,9 +119,14 @@ std::string SchemaColumnsScanner::to_mysql_data_type_string(TColumnDesc& desc) {
case TPrimitiveType::CHAR:
return "char";
case TPrimitiveType::DATE:
+ case TPrimitiveType::DATEV2:
return "date";
case TPrimitiveType::DATETIME:
+ case TPrimitiveType::DATETIMEV2:
return "datetime";
+ case TPrimitiveType::DECIMAL32:
+ case TPrimitiveType::DECIMAL64:
+ case TPrimitiveType::DECIMAL128I:
case TPrimitiveType::DECIMALV2: {
return "decimal";
}
@@ -131,6 +136,9 @@ std::string SchemaColumnsScanner::to_mysql_data_type_string(TColumnDesc& desc) {
case TPrimitiveType::OBJECT: {
return "bitmap";
}
+ case TPrimitiveType::JSONB: {
+ return "json";
+ }
default:
return "unknown";
}
@@ -213,6 +221,9 @@ std::string SchemaColumnsScanner::type_to_string(TColumnDesc& desc) {
case TPrimitiveType::OBJECT: {
return "bitmap";
}
+ case TPrimitiveType::JSONB: {
+ return "json";
+ }
default:
return "unknown";
}
diff --git a/regression-test/data/datatype_p0/scalar_types/sql/infomation_schema.out b/regression-test/data/datatype_p0/scalar_types/sql/infomation_schema.out
new file mode 100644
index 0000000000..faca55aa1a
--- /dev/null
+++ b/regression-test/data/datatype_p0/scalar_types/sql/infomation_schema.out
@@ -0,0 +1,21 @@
+-- This file is automatically generated. You should know what you did if you want to edit this
+-- !infomation_schema --
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup k1 1 \N YES bigint \N \N 19 0 \N \N \N bigint(20) DUP 19 0 \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_bool 2 \N YES tinyint \N \N \N 0 \N \N \N tinyint(1) \N 0 \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_tinyint 3 \N YES tinyint \N \N 3 0 \N \N \N tinyint(4) 3 0 \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_smallint 4 \N YES smallint \N \N 5 0 \N \N \N smallint(6) 5 0 \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_int 5 \N YES int \N \N 10 0 \N \N \N int(11) 10 0 \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_bigint 6 \N YES bigint \N \N 19 0 \N \N \N bigint(20) 19 0 \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_largeint 7 \N YES bigint unsigned \N \N 39 \N \N \N \N largeint 39 \N \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_float 8 \N YES float \N \N 7 7 \N \N \N float 7 7 \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_double 9 \N YES double \N \N 15 15 \N \N \N double 15 15 \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_decimal 10 \N YES decimal \N \N 20 3 \N \N \N decimal(20,3) 20 3 \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_decimalv3 11 \N YES decimal \N \N 20 3 \N \N \N decimalv3(20, 3) 20 3 \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_date 12 \N YES date \N \N \N \N \N \N \N date \N \N \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_datetime 13 \N YES datetime \N \N \N \N \N \N \N datetime \N \N \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_datev2 14 \N YES date \N \N \N \N \N \N \N datev2 \N \N \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_datetimev2 15 \N YES datetime \N \N 18 0 \N \N \N datetimev2(0) \N 0 \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_char 16 \N YES char 15 60 \N \N \N \N \N char(15) 15 \N \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_varchar 17 \N YES varchar 100 400 \N \N \N \N \N varchar(100) 100 \N \N \N
+internal regression_test_datatype_p0_scalar_types tbl_scalar_types_dup c_string 18 \N YES varchar 2147483643 -20 \N \N \N \N \N string 2147483643 \N \N \N
+
diff --git a/regression-test/suites/datatype_p0/scalar_types/sql/infomation_schema.sql b/regression-test/suites/datatype_p0/scalar_types/sql/infomation_schema.sql
new file mode 100644
index 0000000000..0014622537
--- /dev/null
+++ b/regression-test/suites/datatype_p0/scalar_types/sql/infomation_schema.sql
@@ -0,0 +1 @@
+SELECT * FROM `information_schema`.`COLUMNS` WHERE TABLE_SCHEMA = 'regression_test_datatype_p0_scalar_types' AND TABLE_NAME = 'tbl_scalar_types_dup' ORDER BY ORDINAL_POSITION;
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org