This is an automated email from the ASF dual-hosted git repository.
zabetak pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hive.git
The following commit(s) were added to refs/heads/master by this push:
new 07cc9c3faeb HIVE-28285: Exception when querying JDBC tables with
Hive/DB column types mismatch (Stamatis Zampetakis reviewed by Zhihua Deng)
07cc9c3faeb is described below
commit 07cc9c3faebf790284ed0b3b2811f83394575ff5
Author: Stamatis Zampetakis <[email protected]>
AuthorDate: Thu May 30 11:48:56 2024 +0200
HIVE-28285: Exception when querying JDBC tables with Hive/DB column types
mismatch (Stamatis Zampetakis reviewed by Zhihua Deng)
1. Revert changes from HIVE-27487 for fetching types from the database (RS)
and restore the old behavior.
2. Enrich JDBC type conversion test matrix for Derby
a. Increase type combinations
b. Increase test row/values
c. Test with CBO on/off
When Hive types and database (DB) column types are different there is an
implicit type conversion that must be done.
The JdbcRecordIterator drives the type conversion, and the way we extract
values from the ResultSet largely determines the result.
In order to perform the conversion the iterator must use the Hive DDL types
and not the database DDL types obtained from the result set.
Close apache/hive#5274
---
.../jdbc/dao/GenericJdbcDatabaseAccessor.java | 4 -
.../hive/storage/jdbc/dao/JdbcRecordIterator.java | 20 +-
.../external_jdbc_table_typeconversion.q | 246 ++++++-
.../llap/external_jdbc_table_typeconversion.q.out | 706 +++++++++++++++++++--
4 files changed, 868 insertions(+), 108 deletions(-)
diff --git
a/jdbc-handler/src/main/java/org/apache/hive/storage/jdbc/dao/GenericJdbcDatabaseAccessor.java
b/jdbc-handler/src/main/java/org/apache/hive/storage/jdbc/dao/GenericJdbcDatabaseAccessor.java
index e016fe33d48..d6a36f0b729 100644
---
a/jdbc-handler/src/main/java/org/apache/hive/storage/jdbc/dao/GenericJdbcDatabaseAccessor.java
+++
b/jdbc-handler/src/main/java/org/apache/hive/storage/jdbc/dao/GenericJdbcDatabaseAccessor.java
@@ -170,10 +170,6 @@ public class GenericJdbcDatabaseAccessor implements
DatabaseAccessor {
return getColumnMetadata(rs, ResultSetMetaData::getColumnName);
}
- protected List<TypeInfo> getColTypesFromRS(ResultSet rs) throws Exception {
- return getColumnMetadata(rs, typeInfoTranslator);
- }
-
protected String getMetaDataQuery(String sql) {
return addLimitToQuery(sql, 1);
}
diff --git
a/jdbc-handler/src/main/java/org/apache/hive/storage/jdbc/dao/JdbcRecordIterator.java
b/jdbc-handler/src/main/java/org/apache/hive/storage/jdbc/dao/JdbcRecordIterator.java
index 8cc4a72b42a..32596922adc 100644
---
a/jdbc-handler/src/main/java/org/apache/hive/storage/jdbc/dao/JdbcRecordIterator.java
+++
b/jdbc-handler/src/main/java/org/apache/hive/storage/jdbc/dao/JdbcRecordIterator.java
@@ -31,12 +31,10 @@ import java.sql.ResultSet;
import java.sql.SQLDataException;
import java.sql.SQLException;
import java.sql.Types;
-import java.util.Arrays;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
-import java.util.stream.Collectors;
/**
* An iterator that allows iterating through a SQL resultset. Includes methods
to clear up resources.
@@ -49,8 +47,8 @@ public class JdbcRecordIterator implements
Iterator<Map<String, Object>> {
private PreparedStatement ps;
private ResultSet rs;
private GenericJdbcDatabaseAccessor accessor;
- private String[] hiveColumnNames;
- List<TypeInfo> hiveColumnTypesList;
+ private final String[] hiveColumnNames;
+ private final List<TypeInfo> hiveColumnTypesList;
public JdbcRecordIterator(GenericJdbcDatabaseAccessor accessor, Connection
conn,
PreparedStatement ps, ResultSet rs, Configuration conf) throws
HiveJdbcDatabaseAccessException {
@@ -63,29 +61,23 @@ public class JdbcRecordIterator implements
Iterator<Map<String, Object>> {
if (conf.get(Constants.JDBC_TABLE) != null &&
conf.get(Constants.JDBC_QUERY) != null) {
fieldNamesProperty =
Preconditions.checkNotNull(conf.get(Constants.JDBC_QUERY_FIELD_NAMES));
fieldTypesProperty =
Preconditions.checkNotNull(conf.get(Constants.JDBC_QUERY_FIELD_TYPES));
- hiveColumnNames = fieldNamesProperty.trim().split(",");
- hiveColumnTypesList =
TypeInfoUtils.getTypeInfosFromTypeString(fieldTypesProperty);
} else {
try {
if (conf.get(Constants.JDBC_QUERY) == null) {
- hiveColumnNames = accessor.getColNamesFromRS(rs).toArray(new
String[0]);
- hiveColumnTypesList = accessor.getColTypesFromRS(rs);
- fieldNamesProperty =
Arrays.stream(hiveColumnNames).collect(Collectors.joining(","));
- fieldTypesProperty = hiveColumnTypesList.stream().map(typeInfo ->
typeInfo.getTypeName())
- .collect(Collectors.joining(","));
+ fieldNamesProperty = String.join(",",
accessor.getColNamesFromRS(rs));
} else {
fieldNamesProperty =
Preconditions.checkNotNull(conf.get(serdeConstants.LIST_COLUMNS));
- fieldTypesProperty =
Preconditions.checkNotNull(conf.get(serdeConstants.LIST_COLUMN_TYPES));
- hiveColumnNames = fieldNamesProperty.trim().split(",");
- hiveColumnTypesList =
TypeInfoUtils.getTypeInfosFromTypeString(fieldTypesProperty);
}
}
catch (Exception e) {
LOGGER.error("Error while trying to get column names.", e);
throw new HiveJdbcDatabaseAccessException("Error while trying to get
column names: " + e.getMessage(), e);
}
+ fieldTypesProperty =
Preconditions.checkNotNull(conf.get(serdeConstants.LIST_COLUMN_TYPES));
}
LOGGER.debug("Iterator column names: {}, column types: {}",
fieldNamesProperty, fieldTypesProperty);
+ hiveColumnNames = fieldNamesProperty.trim().split(",");
+ hiveColumnTypesList =
TypeInfoUtils.getTypeInfosFromTypeString(fieldTypesProperty);
}
diff --git
a/ql/src/test/queries/clientpositive/external_jdbc_table_typeconversion.q
b/ql/src/test/queries/clientpositive/external_jdbc_table_typeconversion.q
index 5d91810dc3e..9342aa325ba 100644
--- a/ql/src/test/queries/clientpositive/external_jdbc_table_typeconversion.q
+++ b/ql/src/test/queries/clientpositive/external_jdbc_table_typeconversion.q
@@ -40,28 +40,34 @@ TBLPROPERTIES (
"hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE1",
"hive.sql.dbcp.maxActive" = "1"
);
-
+set hive.cbo.enable=true;
+SELECT * FROM jdbc_type_conversion_table1;
+set hive.cbo.enable=false;
SELECT * FROM jdbc_type_conversion_table1;
--- convert numeric/decimal/date/timestamp to varchar
+-- Test type conversion matrix:
+-- from Derby [INTEGER, BIGINT, REAL, DOUBLE, VARCHAR(20), DECIMAL(6,4), DATE,
TIMESTAMP]
+-- to Hive [STRING, INT, BIGINT, DOUBLE, DECIMAL(5,1), DECIMAL(6,2),
DECIMAL(16,2), DATE, TIMESTAMP]
FROM src
SELECT
dboutput
('jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300;create=true','user','passwd',
-'CREATE TABLE EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2 ("ikey" INTEGER, "bkey"
BIGINT, "fkey" REAL, "dkey" DOUBLE, "chkey" VARCHAR(20), "dekey" DECIMAL(6,4),
"dtkey" DATE, "tkey" TIMESTAMP)' ),
+'CREATE TABLE EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2 ("ikey" INTEGER, "bkey"
BIGINT, "fkey" REAL, "dkey" DOUBLE, "chkey" VARCHAR(20), "dekey" DECIMAL(6,4),
"dtkey" DATE, "tkey" TIMESTAMP, "mixkey" VARCHAR(50))' ),
dboutput('jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300','user','passwd',
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','1','1000','20.0','40.0','aaa','3.1415','2010-01-01','2018-01-01
12:00:00.000000000'),
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','1','1000','20.0','40.0','aaa','3.1415','2010-01-01','2018-01-01
12:00:00.000000000','10'),
dboutput('jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300','user','passwd',
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','5','9000',null,'10.0','bbb','2.7182','2018-01-01','2010-06-01
14:00:00.000000000'),
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','5','9000',null,'10.0','bbb','2.7182','2018-01-01','2010-06-01
14:00:00.000000000','100000000000'),
dboutput('jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300','user','passwd',
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','3','4000','120.0','25.4','hello','2.7182','2017-06-05','2011-11-10
18:00:08.000000000'),
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','3','4000','120.0','25.4','hello','2.7182','2017-06-05','2011-11-10
18:00:08.000000000','10.582'),
dboutput('jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300','user','passwd',
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','8','3000','180.0','35.8','world','3.1415','2014-03-03','2016-07-04
13:00:00.000000000'),
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','8','3000','180.0','35.8','world','3.1415','2014-03-03','2016-07-04
13:00:00.000000000','2024-03-03'),
dboutput('jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300','user','passwd',
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','4','8000','120.4','31.3','ccc',null,'2014-03-04','2018-07-08
11:00:00.000000000')
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','4','8000','120.4','31.3','ccc',null,'2014-03-04','2018-07-08
11:00:00.000000000','2018-07-08 11:00:00.000000000'),
+dboutput('jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300','user','passwd',
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','6','6000','80.4','5.3','ddd',null,'2024-05-31','2024-05-31
13:22:34.000000123','ddd')
limit 1;
-CREATE EXTERNAL TABLE jdbc_type_conversion_table2
+CREATE EXTERNAL TABLE jdbc_string_conversion_table
(
ikey string,
bkey string,
@@ -70,7 +76,8 @@ CREATE EXTERNAL TABLE jdbc_type_conversion_table2
chkey string,
dekey string,
dtkey string,
- tkey string
+ tkey string,
+ mixkey string
)
STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
TBLPROPERTIES (
@@ -82,28 +89,157 @@ TBLPROPERTIES (
"hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
"hive.sql.dbcp.maxActive" = "1"
);
+set hive.cbo.enable=true;
+SELECT * FROM jdbc_string_conversion_table;
+set hive.cbo.enable=false;
+SELECT * FROM jdbc_string_conversion_table;
-SELECT * FROM jdbc_type_conversion_table2;
+CREATE EXTERNAL TABLE jdbc_int_conversion_table
+(
+ ikey int,
+ bkey int,
+ fkey int,
+ dkey int,
+ chkey int,
+ dekey int,
+ dtkey int,
+ tkey int,
+ mixkey int
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+ "hive.sql.jdbc.url" =
"jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300;collation=TERRITORY_BASED:PRIMARY",
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+);
+set hive.cbo.enable=true;
+SELECT * FROM jdbc_int_conversion_table;
+set hive.cbo.enable=false;
+SELECT * FROM jdbc_int_conversion_table;
-FROM src
-SELECT
-dboutput
('jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300;create=true','user','passwd',
-'CREATE TABLE EXTERNAL_JDBC_TYPE_CONVERSION_TABLE3 ("ikey" INTEGER, "bkey"
BIGINT, "fkey" REAL, "dkey" DOUBLE, "chkey" VARCHAR(20), "dekey" DECIMAL(6,4),
"dtkey" DATE, "tkey" TIMESTAMP)' ),
-dboutput('jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300','user','passwd',
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE3
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','1','1000','20.0','40.0','aaa','3.1415','2010-01-01','2018-01-01
12:00:00.000000000')
-limit 1;
+CREATE EXTERNAL TABLE jdbc_bigint_conversion_table
+(
+ ikey bigint,
+ bkey bigint,
+ fkey bigint,
+ dkey bigint,
+ chkey bigint,
+ dekey bigint,
+ dtkey bigint,
+ tkey bigint,
+ mixkey bigint
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+ "hive.sql.jdbc.url" =
"jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300;collation=TERRITORY_BASED:PRIMARY",
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+);
+set hive.cbo.enable=true;
+SELECT * FROM jdbc_bigint_conversion_table;
+set hive.cbo.enable=false;
+SELECT * FROM jdbc_bigint_conversion_table;
--- convert between numeric types
-CREATE EXTERNAL TABLE jdbc_type_conversion_table3
+CREATE EXTERNAL TABLE jdbc_double_conversion_table
(
ikey double,
- bkey decimal(5,1),
- fkey int,
- dkey int,
+ bkey double,
+ fkey double,
+ dkey double,
chkey double,
- dekey decimal(6,4),
+ dekey double,
+ dtkey double,
+ tkey double,
+ mixkey double
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+ "hive.sql.jdbc.url" =
"jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300;collation=TERRITORY_BASED:PRIMARY",
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+);
+set hive.cbo.enable=true;
+SELECT * FROM jdbc_double_conversion_table;
+set hive.cbo.enable=false;
+SELECT * FROM jdbc_double_conversion_table;
+
+CREATE EXTERNAL TABLE jdbc_decimal5_1_conversion_table
+(
+ ikey decimal(5,1),
+ bkey decimal(5,1),
+ fkey decimal(5,1),
+ dkey decimal(5,1),
+ chkey decimal(5,1),
+ dekey decimal(5,1),
+ dtkey decimal(5,1),
+ tkey decimal(5,1),
+ mixkey decimal(5,1)
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+ "hive.sql.jdbc.url" =
"jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300;collation=TERRITORY_BASED:PRIMARY",
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+);
+set hive.cbo.enable=true;
+SELECT * FROM jdbc_decimal5_1_conversion_table;
+set hive.cbo.enable=false;
+SELECT * FROM jdbc_decimal5_1_conversion_table;
+
+CREATE EXTERNAL TABLE jdbc_decimal6_4_conversion_table
+(
+ ikey decimal(6,4),
+ bkey decimal(6,4),
+ fkey decimal(6,4),
+ dkey decimal(6,4),
+ chkey decimal(6,4),
+ dekey decimal(6,4),
+ dtkey decimal(6,4),
+ tkey decimal(6,4),
+ mixkey decimal(6,4)
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+ "hive.sql.jdbc.url" =
"jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300;collation=TERRITORY_BASED:PRIMARY",
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+);
+set hive.cbo.enable=true;
+SELECT * FROM jdbc_decimal6_4_conversion_table;
+set hive.cbo.enable=false;
+SELECT * FROM jdbc_decimal6_4_conversion_table;
+
+CREATE EXTERNAL TABLE jdbc_decimal16_2_conversion_table
+(
+ ikey decimal(16,2),
+ bkey decimal(16,2),
+ fkey decimal(16,2),
+ dkey decimal(16,2),
+ chkey decimal(16,2),
+ dekey decimal(16,2),
dtkey decimal(16,2),
- tkey decimal(16,2)
+ tkey decimal(16,2),
+ mixkey decimal(16,2)
)
STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
TBLPROPERTIES (
@@ -112,8 +248,64 @@ TBLPROPERTIES (
"hive.sql.jdbc.url" =
"jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300;collation=TERRITORY_BASED:PRIMARY",
"hive.sql.dbcp.username" = "user",
"hive.sql.dbcp.password" = "passwd",
- "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE3",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+);
+set hive.cbo.enable=true;
+SELECT * FROM jdbc_decimal16_2_conversion_table;
+set hive.cbo.enable=false;
+SELECT * FROM jdbc_decimal16_2_conversion_table;
+
+CREATE EXTERNAL TABLE jdbc_date_conversion_table
+(
+ ikey date,
+ bkey date,
+ fkey date,
+ dkey date,
+ chkey date,
+ dekey date,
+ dtkey date,
+ tkey date,
+ mixkey date
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+ "hive.sql.jdbc.url" =
"jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300;collation=TERRITORY_BASED:PRIMARY",
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
"hive.sql.dbcp.maxActive" = "1"
);
+set hive.cbo.enable=true;
+SELECT * FROM jdbc_date_conversion_table;
+set hive.cbo.enable=false;
+SELECT * FROM jdbc_date_conversion_table;
-SELECT * FROM jdbc_type_conversion_table3;
+CREATE EXTERNAL TABLE jdbc_timestamp_conversion_table
+(
+ ikey timestamp,
+ bkey timestamp,
+ fkey timestamp,
+ dkey timestamp,
+ chkey timestamp,
+ dekey timestamp,
+ dtkey timestamp,
+ tkey timestamp,
+ mixkey timestamp
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+ "hive.sql.jdbc.url" =
"jdbc:derby:;databaseName=${system:test.tmp.dir}/test_derby2_300;collation=TERRITORY_BASED:PRIMARY",
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+);
+set hive.cbo.enable=true;
+SELECT * FROM jdbc_timestamp_conversion_table;
+set hive.cbo.enable=false;
+SELECT * FROM jdbc_timestamp_conversion_table;
\ No newline at end of file
diff --git
a/ql/src/test/results/clientpositive/llap/external_jdbc_table_typeconversion.q.out
b/ql/src/test/results/clientpositive/llap/external_jdbc_table_typeconversion.q.out
index 00119224068..7b5c97756a5 100644
---
a/ql/src/test/results/clientpositive/llap/external_jdbc_table_typeconversion.q.out
+++
b/ql/src/test/results/clientpositive/llap/external_jdbc_table_typeconversion.q.out
@@ -102,20 +102,35 @@ POSTHOOK: Input: default@jdbc_type_conversion_table1
3 4000 120.0 25.4 hello 2.718 2017-06-05 2011-11-10
18:00:08
8 3000 180.0 35.8 world 3.142 2014-03-03 2016-07-04
13:00:00
4 8000 120.4 31.3 ccc NULL 2014-03-04 2018-07-08
11:00:00
+PREHOOK: query: SELECT * FROM jdbc_type_conversion_table1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@jdbc_type_conversion_table1
+#### A masked pattern was here ####
+POSTHOOK: query: SELECT * FROM jdbc_type_conversion_table1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@jdbc_type_conversion_table1
+#### A masked pattern was here ####
+1 1000 20.0 40.0 aaa 3.142 2010-01-01 2018-01-01
12:00:00
+5 9000 NULL 10.0 bbb 2.718 2018-01-01 2010-06-01
14:00:00
+3 4000 120.0 25.4 hello 2.718 2017-06-05 2011-11-10
18:00:08
+8 3000 180.0 35.8 world 3.142 2014-03-03 2016-07-04
13:00:00
+4 8000 120.4 31.3 ccc NULL 2014-03-04 2018-07-08
11:00:00
PREHOOK: query: FROM src
SELECT
#### A masked pattern was here ####
-'CREATE TABLE EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2 ("ikey" INTEGER, "bkey"
BIGINT, "fkey" REAL, "dkey" DOUBLE, "chkey" VARCHAR(20), "dekey" DECIMAL(6,4),
"dtkey" DATE, "tkey" TIMESTAMP)' ),
+'CREATE TABLE EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2 ("ikey" INTEGER, "bkey"
BIGINT, "fkey" REAL, "dkey" DOUBLE, "chkey" VARCHAR(20), "dekey" DECIMAL(6,4),
"dtkey" DATE, "tkey" TIMESTAMP, "mixkey" VARCHAR(50))' ),
+#### A masked pattern was here ####
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','1','1000','20.0','40.0','aaa','3.1415','2010-01-01','2018-01-01
12:00:00.000000000','10'),
#### A masked pattern was here ####
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','1','1000','20.0','40.0','aaa','3.1415','2010-01-01','2018-01-01
12:00:00.000000000'),
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','5','9000',null,'10.0','bbb','2.7182','2018-01-01','2010-06-01
14:00:00.000000000','100000000000'),
#### A masked pattern was here ####
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','5','9000',null,'10.0','bbb','2.7182','2018-01-01','2010-06-01
14:00:00.000000000'),
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','3','4000','120.0','25.4','hello','2.7182','2017-06-05','2011-11-10
18:00:08.000000000','10.582'),
#### A masked pattern was here ####
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','3','4000','120.0','25.4','hello','2.7182','2017-06-05','2011-11-10
18:00:08.000000000'),
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','8','3000','180.0','35.8','world','3.1415','2014-03-03','2016-07-04
13:00:00.000000000','2024-03-03'),
#### A masked pattern was here ####
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','8','3000','180.0','35.8','world','3.1415','2014-03-03','2016-07-04
13:00:00.000000000'),
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','4','8000','120.4','31.3','ccc',null,'2014-03-04','2018-07-08
11:00:00.000000000','2018-07-08 11:00:00.000000000'),
#### A masked pattern was here ####
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','4','8000','120.4','31.3','ccc',null,'2014-03-04','2018-07-08
11:00:00.000000000')
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','6','6000','80.4','5.3','ddd',null,'2024-05-31','2024-05-31
13:22:34.000000123','ddd')
limit 1
PREHOOK: type: QUERY
PREHOOK: Input: default@src
@@ -123,23 +138,25 @@ PREHOOK: Input: default@src
POSTHOOK: query: FROM src
SELECT
#### A masked pattern was here ####
-'CREATE TABLE EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2 ("ikey" INTEGER, "bkey"
BIGINT, "fkey" REAL, "dkey" DOUBLE, "chkey" VARCHAR(20), "dekey" DECIMAL(6,4),
"dtkey" DATE, "tkey" TIMESTAMP)' ),
+'CREATE TABLE EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2 ("ikey" INTEGER, "bkey"
BIGINT, "fkey" REAL, "dkey" DOUBLE, "chkey" VARCHAR(20), "dekey" DECIMAL(6,4),
"dtkey" DATE, "tkey" TIMESTAMP, "mixkey" VARCHAR(50))' ),
#### A masked pattern was here ####
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','1','1000','20.0','40.0','aaa','3.1415','2010-01-01','2018-01-01
12:00:00.000000000'),
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','1','1000','20.0','40.0','aaa','3.1415','2010-01-01','2018-01-01
12:00:00.000000000','10'),
#### A masked pattern was here ####
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','5','9000',null,'10.0','bbb','2.7182','2018-01-01','2010-06-01
14:00:00.000000000'),
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','5','9000',null,'10.0','bbb','2.7182','2018-01-01','2010-06-01
14:00:00.000000000','100000000000'),
#### A masked pattern was here ####
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','3','4000','120.0','25.4','hello','2.7182','2017-06-05','2011-11-10
18:00:08.000000000'),
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','3','4000','120.0','25.4','hello','2.7182','2017-06-05','2011-11-10
18:00:08.000000000','10.582'),
#### A masked pattern was here ####
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','8','3000','180.0','35.8','world','3.1415','2014-03-03','2016-07-04
13:00:00.000000000'),
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','8','3000','180.0','35.8','world','3.1415','2014-03-03','2016-07-04
13:00:00.000000000','2024-03-03'),
#### A masked pattern was here ####
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','4','8000','120.4','31.3','ccc',null,'2014-03-04','2018-07-08
11:00:00.000000000')
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','4','8000','120.4','31.3','ccc',null,'2014-03-04','2018-07-08
11:00:00.000000000','2018-07-08 11:00:00.000000000'),
+#### A masked pattern was here ####
+'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey", "mixkey") VALUES
(?,?,?,?,?,?,?,?,?)','6','6000','80.4','5.3','ddd',null,'2024-05-31','2024-05-31
13:22:34.000000123','ddd')
limit 1
POSTHOOK: type: QUERY
POSTHOOK: Input: default@src
#### A masked pattern was here ####
-0 0 0 0 0 0
-PREHOOK: query: CREATE EXTERNAL TABLE jdbc_type_conversion_table2
+0 0 0 0 0 0 0
+PREHOOK: query: CREATE EXTERNAL TABLE jdbc_string_conversion_table
(
ikey string,
bkey string,
@@ -148,7 +165,8 @@ PREHOOK: query: CREATE EXTERNAL TABLE
jdbc_type_conversion_table2
chkey string,
dekey string,
dtkey string,
- tkey string
+ tkey string,
+ mixkey string
)
STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
TBLPROPERTIES (
@@ -162,8 +180,8 @@ TBLPROPERTIES (
)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@jdbc_type_conversion_table2
-POSTHOOK: query: CREATE EXTERNAL TABLE jdbc_type_conversion_table2
+PREHOOK: Output: default@jdbc_string_conversion_table
+POSTHOOK: query: CREATE EXTERNAL TABLE jdbc_string_conversion_table
(
ikey string,
bkey string,
@@ -172,7 +190,8 @@ POSTHOOK: query: CREATE EXTERNAL TABLE
jdbc_type_conversion_table2
chkey string,
dekey string,
dtkey string,
- tkey string
+ tkey string,
+ mixkey string
)
STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
TBLPROPERTIES (
@@ -186,51 +205,202 @@ TBLPROPERTIES (
)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@jdbc_type_conversion_table2
-PREHOOK: query: SELECT * FROM jdbc_type_conversion_table2
+POSTHOOK: Output: default@jdbc_string_conversion_table
+PREHOOK: query: SELECT * FROM jdbc_string_conversion_table
PREHOOK: type: QUERY
-PREHOOK: Input: default@jdbc_type_conversion_table2
+PREHOOK: Input: default@jdbc_string_conversion_table
#### A masked pattern was here ####
-POSTHOOK: query: SELECT * FROM jdbc_type_conversion_table2
+POSTHOOK: query: SELECT * FROM jdbc_string_conversion_table
POSTHOOK: type: QUERY
-POSTHOOK: Input: default@jdbc_type_conversion_table2
+POSTHOOK: Input: default@jdbc_string_conversion_table
+#### A masked pattern was here ####
+1 1000 20.0 40.0 aaa 3.1415 2010-01-01 2018-01-01
12:00:00.0 10
+5 9000 NULL 10.0 bbb 2.7182 2018-01-01 2010-06-01
14:00:00.0 100000000000
+3 4000 120.0 25.4 hello 2.7182 2017-06-05 2011-11-10
18:00:08.0 10.582
+8 3000 180.0 35.8 world 3.1415 2014-03-03 2016-07-04
13:00:00.0 2024-03-03
+4 8000 120.4 31.3 ccc NULL 2014-03-04 2018-07-08
11:00:00.0 2018-07-08 11:00:00.000000000
+6 6000 80.4 5.3 ddd NULL 2024-05-31 2024-05-31
13:22:34.000000123 ddd
+PREHOOK: query: SELECT * FROM jdbc_string_conversion_table
+PREHOOK: type: QUERY
+PREHOOK: Input: default@jdbc_string_conversion_table
#### A masked pattern was here ####
-1 1000 20.0 40.0 aaa 3.1415 2010-01-01 2018-01-01
12:00:00.0
-5 9000 NULL 10.0 bbb 2.7182 2018-01-01 2010-06-01
14:00:00.0
-3 4000 120.0 25.4 hello 2.7182 2017-06-05 2011-11-10
18:00:08.0
-8 3000 180.0 35.8 world 3.1415 2014-03-03 2016-07-04
13:00:00.0
-4 8000 120.4 31.3 ccc NULL 2014-03-04 2018-07-08
11:00:00.0
-PREHOOK: query: FROM src
-SELECT
+POSTHOOK: query: SELECT * FROM jdbc_string_conversion_table
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@jdbc_string_conversion_table
+#### A masked pattern was here ####
+1 1000 20.0 40.0 aaa 3.1415 2010-01-01 2018-01-01
12:00:00.0 10
+5 9000 NULL 10.0 bbb 2.7182 2018-01-01 2010-06-01
14:00:00.0 100000000000
+3 4000 120.0 25.4 hello 2.7182 2017-06-05 2011-11-10
18:00:08.0 10.582
+8 3000 180.0 35.8 world 3.1415 2014-03-03 2016-07-04
13:00:00.0 2024-03-03
+4 8000 120.4 31.3 ccc NULL 2014-03-04 2018-07-08
11:00:00.0 2018-07-08 11:00:00.000000000
+6 6000 80.4 5.3 ddd NULL 2024-05-31 2024-05-31
13:22:34.000000123 ddd
+PREHOOK: query: CREATE EXTERNAL TABLE jdbc_int_conversion_table
+(
+ ikey int,
+ bkey int,
+ fkey int,
+ dkey int,
+ chkey int,
+ dekey int,
+ dtkey int,
+ tkey int,
+ mixkey int
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
#### A masked pattern was here ####
-'CREATE TABLE EXTERNAL_JDBC_TYPE_CONVERSION_TABLE3 ("ikey" INTEGER, "bkey"
BIGINT, "fkey" REAL, "dkey" DOUBLE, "chkey" VARCHAR(20), "dekey" DECIMAL(6,4),
"dtkey" DATE, "tkey" TIMESTAMP)' ),
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@jdbc_int_conversion_table
+POSTHOOK: query: CREATE EXTERNAL TABLE jdbc_int_conversion_table
+(
+ ikey int,
+ bkey int,
+ fkey int,
+ dkey int,
+ chkey int,
+ dekey int,
+ dtkey int,
+ tkey int,
+ mixkey int
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
#### A masked pattern was here ####
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE3
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','1','1000','20.0','40.0','aaa','3.1415','2010-01-01','2018-01-01
12:00:00.000000000')
-limit 1
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@jdbc_int_conversion_table
+PREHOOK: query: SELECT * FROM jdbc_int_conversion_table
PREHOOK: type: QUERY
-PREHOOK: Input: default@src
+PREHOOK: Input: default@jdbc_int_conversion_table
#### A masked pattern was here ####
-POSTHOOK: query: FROM src
-SELECT
+POSTHOOK: query: SELECT * FROM jdbc_int_conversion_table
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@jdbc_int_conversion_table
+#### A masked pattern was here ####
+1 1000 20 40 NULL 3 NULL NULL 10
+5 9000 NULL 10 NULL 2 NULL NULL NULL
+3 4000 120 25 NULL 2 NULL NULL NULL
+8 3000 180 35 NULL 3 NULL NULL NULL
+4 8000 120 31 NULL NULL NULL NULL NULL
+6 6000 80 5 NULL NULL NULL NULL NULL
+PREHOOK: query: SELECT * FROM jdbc_int_conversion_table
+PREHOOK: type: QUERY
+PREHOOK: Input: default@jdbc_int_conversion_table
#### A masked pattern was here ####
-'CREATE TABLE EXTERNAL_JDBC_TYPE_CONVERSION_TABLE3 ("ikey" INTEGER, "bkey"
BIGINT, "fkey" REAL, "dkey" DOUBLE, "chkey" VARCHAR(20), "dekey" DECIMAL(6,4),
"dtkey" DATE, "tkey" TIMESTAMP)' ),
+POSTHOOK: query: SELECT * FROM jdbc_int_conversion_table
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@jdbc_int_conversion_table
+#### A masked pattern was here ####
+1 1000 20 40 NULL 3 NULL NULL 10
+5 9000 NULL 10 NULL 2 NULL NULL NULL
+3 4000 120 25 NULL 2 NULL NULL NULL
+8 3000 180 35 NULL 3 NULL NULL NULL
+4 8000 120 31 NULL NULL NULL NULL NULL
+6 6000 80 5 NULL NULL NULL NULL NULL
+PREHOOK: query: CREATE EXTERNAL TABLE jdbc_bigint_conversion_table
+(
+ ikey bigint,
+ bkey bigint,
+ fkey bigint,
+ dkey bigint,
+ chkey bigint,
+ dekey bigint,
+ dtkey bigint,
+ tkey bigint,
+ mixkey bigint
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
#### A masked pattern was here ####
-'INSERT INTO EXTERNAL_JDBC_TYPE_CONVERSION_TABLE3
("ikey","bkey","fkey","dkey","chkey","dekey","dtkey","tkey") VALUES
(?,?,?,?,?,?,?,?)','1','1000','20.0','40.0','aaa','3.1415','2010-01-01','2018-01-01
12:00:00.000000000')
-limit 1
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@jdbc_bigint_conversion_table
+POSTHOOK: query: CREATE EXTERNAL TABLE jdbc_bigint_conversion_table
+(
+ ikey bigint,
+ bkey bigint,
+ fkey bigint,
+ dkey bigint,
+ chkey bigint,
+ dekey bigint,
+ dtkey bigint,
+ tkey bigint,
+ mixkey bigint
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+#### A masked pattern was here ####
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@jdbc_bigint_conversion_table
+PREHOOK: query: SELECT * FROM jdbc_bigint_conversion_table
+PREHOOK: type: QUERY
+PREHOOK: Input: default@jdbc_bigint_conversion_table
+#### A masked pattern was here ####
+POSTHOOK: query: SELECT * FROM jdbc_bigint_conversion_table
POSTHOOK: type: QUERY
-POSTHOOK: Input: default@src
+POSTHOOK: Input: default@jdbc_bigint_conversion_table
+#### A masked pattern was here ####
+1 1000 20 40 NULL 3 NULL NULL 10
+5 9000 NULL 10 NULL 2 NULL NULL 100000000000
+3 4000 120 25 NULL 2 NULL NULL NULL
+8 3000 180 35 NULL 3 NULL NULL NULL
+4 8000 120 31 NULL NULL NULL NULL NULL
+6 6000 80 5 NULL NULL NULL NULL NULL
+PREHOOK: query: SELECT * FROM jdbc_bigint_conversion_table
+PREHOOK: type: QUERY
+PREHOOK: Input: default@jdbc_bigint_conversion_table
#### A masked pattern was here ####
-0 0
-PREHOOK: query: CREATE EXTERNAL TABLE jdbc_type_conversion_table3
+POSTHOOK: query: SELECT * FROM jdbc_bigint_conversion_table
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@jdbc_bigint_conversion_table
+#### A masked pattern was here ####
+1 1000 20 40 NULL 3 NULL NULL 10
+5 9000 NULL 10 NULL 2 NULL NULL 100000000000
+3 4000 120 25 NULL 2 NULL NULL NULL
+8 3000 180 35 NULL 3 NULL NULL NULL
+4 8000 120 31 NULL NULL NULL NULL NULL
+6 6000 80 5 NULL NULL NULL NULL NULL
+PREHOOK: query: CREATE EXTERNAL TABLE jdbc_double_conversion_table
(
ikey double,
- bkey decimal(5,1),
- fkey int,
- dkey int,
+ bkey double,
+ fkey double,
+ dkey double,
chkey double,
- dekey decimal(6,4),
- dtkey decimal(16,2),
- tkey decimal(16,2)
+ dekey double,
+ dtkey double,
+ tkey double,
+ mixkey double
)
STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
TBLPROPERTIES (
@@ -239,22 +409,310 @@ TBLPROPERTIES (
#### A masked pattern was here ####
"hive.sql.dbcp.username" = "user",
"hive.sql.dbcp.password" = "passwd",
- "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE3",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
"hive.sql.dbcp.maxActive" = "1"
)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
-PREHOOK: Output: default@jdbc_type_conversion_table3
-POSTHOOK: query: CREATE EXTERNAL TABLE jdbc_type_conversion_table3
+PREHOOK: Output: default@jdbc_double_conversion_table
+POSTHOOK: query: CREATE EXTERNAL TABLE jdbc_double_conversion_table
(
ikey double,
- bkey decimal(5,1),
- fkey int,
- dkey int,
+ bkey double,
+ fkey double,
+ dkey double,
chkey double,
- dekey decimal(6,4),
+ dekey double,
+ dtkey double,
+ tkey double,
+ mixkey double
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+#### A masked pattern was here ####
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@jdbc_double_conversion_table
+PREHOOK: query: SELECT * FROM jdbc_double_conversion_table
+PREHOOK: type: QUERY
+PREHOOK: Input: default@jdbc_double_conversion_table
+#### A masked pattern was here ####
+POSTHOOK: query: SELECT * FROM jdbc_double_conversion_table
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@jdbc_double_conversion_table
+#### A masked pattern was here ####
+1.0 1000.0 20.0 40.0 NULL 3.1415 NULL NULL 10.0
+5.0 9000.0 NULL 10.0 NULL 2.7182 NULL NULL 1.0E11
+3.0 4000.0 120.0 25.4 NULL 2.7182 NULL NULL 10.582
+8.0 3000.0 180.0 35.8 NULL 3.1415 NULL NULL NULL
+4.0 8000.0 120.4000015258789 31.3 NULL NULL NULL NULL
NULL
+6.0 6000.0 80.4000015258789 5.3 NULL NULL NULL NULL
NULL
+PREHOOK: query: SELECT * FROM jdbc_double_conversion_table
+PREHOOK: type: QUERY
+PREHOOK: Input: default@jdbc_double_conversion_table
+#### A masked pattern was here ####
+POSTHOOK: query: SELECT * FROM jdbc_double_conversion_table
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@jdbc_double_conversion_table
+#### A masked pattern was here ####
+1.0 1000.0 20.0 40.0 NULL 3.1415 NULL NULL 10.0
+5.0 9000.0 NULL 10.0 NULL 2.7182 NULL NULL 1.0E11
+3.0 4000.0 120.0 25.4 NULL 2.7182 NULL NULL 10.582
+8.0 3000.0 180.0 35.8 NULL 3.1415 NULL NULL NULL
+4.0 8000.0 120.4000015258789 31.3 NULL NULL NULL NULL
NULL
+6.0 6000.0 80.4000015258789 5.3 NULL NULL NULL NULL
NULL
+PREHOOK: query: CREATE EXTERNAL TABLE jdbc_decimal5_1_conversion_table
+(
+ ikey decimal(5,1),
+ bkey decimal(5,1),
+ fkey decimal(5,1),
+ dkey decimal(5,1),
+ chkey decimal(5,1),
+ dekey decimal(5,1),
+ dtkey decimal(5,1),
+ tkey decimal(5,1),
+ mixkey decimal(5,1)
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+#### A masked pattern was here ####
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@jdbc_decimal5_1_conversion_table
+POSTHOOK: query: CREATE EXTERNAL TABLE jdbc_decimal5_1_conversion_table
+(
+ ikey decimal(5,1),
+ bkey decimal(5,1),
+ fkey decimal(5,1),
+ dkey decimal(5,1),
+ chkey decimal(5,1),
+ dekey decimal(5,1),
+ dtkey decimal(5,1),
+ tkey decimal(5,1),
+ mixkey decimal(5,1)
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+#### A masked pattern was here ####
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@jdbc_decimal5_1_conversion_table
+PREHOOK: query: SELECT * FROM jdbc_decimal5_1_conversion_table
+PREHOOK: type: QUERY
+PREHOOK: Input: default@jdbc_decimal5_1_conversion_table
+#### A masked pattern was here ####
+POSTHOOK: query: SELECT * FROM jdbc_decimal5_1_conversion_table
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@jdbc_decimal5_1_conversion_table
+#### A masked pattern was here ####
+1.0 1000.0 20.0 40.0 NULL 3.1 NULL NULL 10.0
+5.0 9000.0 NULL 10.0 NULL 2.7 NULL NULL ��������
+3.0 4000.0 120.0 25.4 NULL 2.7 NULL NULL 10.6
+8.0 3000.0 180.0 35.8 NULL 3.1 NULL NULL NULL
+4.0 8000.0 120.4 31.3 NULL NULL NULL NULL NULL
+6.0 6000.0 80.4 5.3 NULL NULL NULL NULL NULL
+PREHOOK: query: SELECT * FROM jdbc_decimal5_1_conversion_table
+PREHOOK: type: QUERY
+PREHOOK: Input: default@jdbc_decimal5_1_conversion_table
+#### A masked pattern was here ####
+POSTHOOK: query: SELECT * FROM jdbc_decimal5_1_conversion_table
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@jdbc_decimal5_1_conversion_table
+#### A masked pattern was here ####
+1.0 1000.0 20.0 40.0 NULL 3.1 NULL NULL 10.0
+5.0 9000.0 NULL 10.0 NULL 2.7 NULL NULL ��������
+3.0 4000.0 120.0 25.4 NULL 2.7 NULL NULL 10.6
+8.0 3000.0 180.0 35.8 NULL 3.1 NULL NULL NULL
+4.0 8000.0 120.4 31.3 NULL NULL NULL NULL NULL
+6.0 6000.0 80.4 5.3 NULL NULL NULL NULL NULL
+PREHOOK: query: CREATE EXTERNAL TABLE jdbc_decimal6_4_conversion_table
+(
+ ikey decimal(6,4),
+ bkey decimal(6,4),
+ fkey decimal(6,4),
+ dkey decimal(6,4),
+ chkey decimal(6,4),
+ dekey decimal(6,4),
+ dtkey decimal(6,4),
+ tkey decimal(6,4),
+ mixkey decimal(6,4)
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+#### A masked pattern was here ####
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@jdbc_decimal6_4_conversion_table
+POSTHOOK: query: CREATE EXTERNAL TABLE jdbc_decimal6_4_conversion_table
+(
+ ikey decimal(6,4),
+ bkey decimal(6,4),
+ fkey decimal(6,4),
+ dkey decimal(6,4),
+ chkey decimal(6,4),
+ dekey decimal(6,4),
+ dtkey decimal(6,4),
+ tkey decimal(6,4),
+ mixkey decimal(6,4)
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+#### A masked pattern was here ####
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@jdbc_decimal6_4_conversion_table
+PREHOOK: query: SELECT * FROM jdbc_decimal6_4_conversion_table
+PREHOOK: type: QUERY
+PREHOOK: Input: default@jdbc_decimal6_4_conversion_table
+#### A masked pattern was here ####
+POSTHOOK: query: SELECT * FROM jdbc_decimal6_4_conversion_table
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@jdbc_decimal6_4_conversion_table
+#### A masked pattern was here ####
+1.0000 �������� 20.0000 40.0000 NULL 3.1415 NULL NULL 10.0000
+5.0000 �������� NULL 10.0000 NULL 2.7182 NULL NULL ��������
+3.0000 �������� �������� 25.4000 NULL 2.7182 NULL NULL
10.5820
+8.0000 �������� �������� 35.8000 NULL 3.1415 NULL NULL
NULL
+4.0000 �������� �������� 31.3000 NULL NULL NULL NULL
NULL
+6.0000 �������� 80.4000 5.3000 NULL NULL NULL NULL NULL
+PREHOOK: query: SELECT * FROM jdbc_decimal6_4_conversion_table
+PREHOOK: type: QUERY
+PREHOOK: Input: default@jdbc_decimal6_4_conversion_table
+#### A masked pattern was here ####
+POSTHOOK: query: SELECT * FROM jdbc_decimal6_4_conversion_table
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@jdbc_decimal6_4_conversion_table
+#### A masked pattern was here ####
+1.0000 �������� 20.0000 40.0000 NULL 3.1415 NULL NULL 10.0000
+5.0000 �������� NULL 10.0000 NULL 2.7182 NULL NULL ��������
+3.0000 �������� �������� 25.4000 NULL 2.7182 NULL NULL
10.5820
+8.0000 �������� �������� 35.8000 NULL 3.1415 NULL NULL
NULL
+4.0000 �������� �������� 31.3000 NULL NULL NULL NULL
NULL
+6.0000 �������� 80.4000 5.3000 NULL NULL NULL NULL NULL
+PREHOOK: query: CREATE EXTERNAL TABLE jdbc_decimal16_2_conversion_table
+(
+ ikey decimal(16,2),
+ bkey decimal(16,2),
+ fkey decimal(16,2),
+ dkey decimal(16,2),
+ chkey decimal(16,2),
+ dekey decimal(16,2),
dtkey decimal(16,2),
- tkey decimal(16,2)
+ tkey decimal(16,2),
+ mixkey decimal(16,2)
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+#### A masked pattern was here ####
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@jdbc_decimal16_2_conversion_table
+POSTHOOK: query: CREATE EXTERNAL TABLE jdbc_decimal16_2_conversion_table
+(
+ ikey decimal(16,2),
+ bkey decimal(16,2),
+ fkey decimal(16,2),
+ dkey decimal(16,2),
+ chkey decimal(16,2),
+ dekey decimal(16,2),
+ dtkey decimal(16,2),
+ tkey decimal(16,2),
+ mixkey decimal(16,2)
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+#### A masked pattern was here ####
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@jdbc_decimal16_2_conversion_table
+PREHOOK: query: SELECT * FROM jdbc_decimal16_2_conversion_table
+PREHOOK: type: QUERY
+PREHOOK: Input: default@jdbc_decimal16_2_conversion_table
+#### A masked pattern was here ####
+POSTHOOK: query: SELECT * FROM jdbc_decimal16_2_conversion_table
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@jdbc_decimal16_2_conversion_table
+#### A masked pattern was here ####
+1.00 1000.00 20.00 40.00 NULL 3.14 NULL NULL 10.00
+5.00 9000.00 NULL 10.00 NULL 2.72 NULL NULL 100000000000.00
+3.00 4000.00 120.00 25.40 NULL 2.72 NULL NULL 10.58
+8.00 3000.00 180.00 35.80 NULL 3.14 NULL NULL NULL
+4.00 8000.00 120.40 31.30 NULL NULL NULL NULL NULL
+6.00 6000.00 80.40 5.30 NULL NULL NULL NULL NULL
+PREHOOK: query: SELECT * FROM jdbc_decimal16_2_conversion_table
+PREHOOK: type: QUERY
+PREHOOK: Input: default@jdbc_decimal16_2_conversion_table
+#### A masked pattern was here ####
+POSTHOOK: query: SELECT * FROM jdbc_decimal16_2_conversion_table
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@jdbc_decimal16_2_conversion_table
+#### A masked pattern was here ####
+1.00 1000.00 20.00 40.00 NULL 3.14 NULL NULL 10.00
+5.00 9000.00 NULL 10.00 NULL 2.72 NULL NULL 100000000000.00
+3.00 4000.00 120.00 25.40 NULL 2.72 NULL NULL 10.58
+8.00 3000.00 180.00 35.80 NULL 3.14 NULL NULL NULL
+4.00 8000.00 120.40 31.30 NULL NULL NULL NULL NULL
+6.00 6000.00 80.40 5.30 NULL NULL NULL NULL NULL
+PREHOOK: query: CREATE EXTERNAL TABLE jdbc_date_conversion_table
+(
+ ikey date,
+ bkey date,
+ fkey date,
+ dkey date,
+ chkey date,
+ dekey date,
+ dtkey date,
+ tkey date,
+ mixkey date
)
STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
TBLPROPERTIES (
@@ -263,18 +721,140 @@ TBLPROPERTIES (
#### A masked pattern was here ####
"hive.sql.dbcp.username" = "user",
"hive.sql.dbcp.password" = "passwd",
- "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE3",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@jdbc_date_conversion_table
+POSTHOOK: query: CREATE EXTERNAL TABLE jdbc_date_conversion_table
+(
+ ikey date,
+ bkey date,
+ fkey date,
+ dkey date,
+ chkey date,
+ dekey date,
+ dtkey date,
+ tkey date,
+ mixkey date
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+#### A masked pattern was here ####
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
"hive.sql.dbcp.maxActive" = "1"
)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
-POSTHOOK: Output: default@jdbc_type_conversion_table3
-PREHOOK: query: SELECT * FROM jdbc_type_conversion_table3
+POSTHOOK: Output: default@jdbc_date_conversion_table
+PREHOOK: query: SELECT * FROM jdbc_date_conversion_table
PREHOOK: type: QUERY
-PREHOOK: Input: default@jdbc_type_conversion_table3
+PREHOOK: Input: default@jdbc_date_conversion_table
#### A masked pattern was here ####
-POSTHOOK: query: SELECT * FROM jdbc_type_conversion_table3
+POSTHOOK: query: SELECT * FROM jdbc_date_conversion_table
POSTHOOK: type: QUERY
-POSTHOOK: Input: default@jdbc_type_conversion_table3
+POSTHOOK: Input: default@jdbc_date_conversion_table
+#### A masked pattern was here ####
+NULL NULL NULL NULL NULL NULL 2010-01-01 2018-01-01
NULL
+NULL NULL NULL NULL NULL NULL 2018-01-01 2010-06-01
NULL
+NULL NULL NULL NULL NULL NULL 2017-06-05 2011-11-10
NULL
+NULL NULL NULL NULL NULL NULL 2014-03-03 2016-07-04
2024-03-03
+NULL NULL NULL NULL NULL NULL 2014-03-04 2018-07-08
2018-07-08
+NULL NULL NULL NULL NULL NULL 2024-05-31 2024-05-31
NULL
+PREHOOK: query: SELECT * FROM jdbc_date_conversion_table
+PREHOOK: type: QUERY
+PREHOOK: Input: default@jdbc_date_conversion_table
#### A masked pattern was here ####
-1.0 1000.0 20 40 NULL 3.1415 NULL NULL
+POSTHOOK: query: SELECT * FROM jdbc_date_conversion_table
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@jdbc_date_conversion_table
+#### A masked pattern was here ####
+NULL NULL NULL NULL NULL NULL 2010-01-01 2018-01-01
NULL
+NULL NULL NULL NULL NULL NULL 2018-01-01 2010-06-01
NULL
+NULL NULL NULL NULL NULL NULL 2017-06-05 2011-11-10
NULL
+NULL NULL NULL NULL NULL NULL 2014-03-03 2016-07-04
2024-03-03
+NULL NULL NULL NULL NULL NULL 2014-03-04 2018-07-08
2018-07-08
+NULL NULL NULL NULL NULL NULL 2024-05-31 2024-05-31
NULL
+PREHOOK: query: CREATE EXTERNAL TABLE jdbc_timestamp_conversion_table
+(
+ ikey timestamp,
+ bkey timestamp,
+ fkey timestamp,
+ dkey timestamp,
+ chkey timestamp,
+ dekey timestamp,
+ dtkey timestamp,
+ tkey timestamp,
+ mixkey timestamp
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+#### A masked pattern was here ####
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@jdbc_timestamp_conversion_table
+POSTHOOK: query: CREATE EXTERNAL TABLE jdbc_timestamp_conversion_table
+(
+ ikey timestamp,
+ bkey timestamp,
+ fkey timestamp,
+ dkey timestamp,
+ chkey timestamp,
+ dekey timestamp,
+ dtkey timestamp,
+ tkey timestamp,
+ mixkey timestamp
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+ "hive.sql.database.type" = "DERBY",
+ "hive.sql.jdbc.driver" =
"org.apache.derby.jdbc.EmbeddedDriver",
+#### A masked pattern was here ####
+ "hive.sql.dbcp.username" = "user",
+ "hive.sql.dbcp.password" = "passwd",
+ "hive.sql.table" = "EXTERNAL_JDBC_TYPE_CONVERSION_TABLE2",
+ "hive.sql.dbcp.maxActive" = "1"
+)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@jdbc_timestamp_conversion_table
+PREHOOK: query: SELECT * FROM jdbc_timestamp_conversion_table
+PREHOOK: type: QUERY
+PREHOOK: Input: default@jdbc_timestamp_conversion_table
+#### A masked pattern was here ####
+POSTHOOK: query: SELECT * FROM jdbc_timestamp_conversion_table
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@jdbc_timestamp_conversion_table
+#### A masked pattern was here ####
+NULL NULL NULL NULL NULL NULL 2010-01-01 00:00:00
2018-01-01 12:00:00 NULL
+NULL NULL NULL NULL NULL NULL 2018-01-01 00:00:00
2010-06-01 14:00:00 NULL
+NULL NULL NULL NULL NULL NULL 2017-06-05 00:00:00
2011-11-10 18:00:08 NULL
+NULL NULL NULL NULL NULL NULL 2014-03-03 00:00:00
2016-07-04 13:00:00 NULL
+NULL NULL NULL NULL NULL NULL 2014-03-04 00:00:00
2018-07-08 11:00:00 2018-07-08 11:00:00
+NULL NULL NULL NULL NULL NULL 2024-05-31 00:00:00
2024-05-31 13:22:34.000000123 NULL
+PREHOOK: query: SELECT * FROM jdbc_timestamp_conversion_table
+PREHOOK: type: QUERY
+PREHOOK: Input: default@jdbc_timestamp_conversion_table
+#### A masked pattern was here ####
+POSTHOOK: query: SELECT * FROM jdbc_timestamp_conversion_table
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@jdbc_timestamp_conversion_table
+#### A masked pattern was here ####
+NULL NULL NULL NULL NULL NULL 2010-01-01 00:00:00
2018-01-01 12:00:00 NULL
+NULL NULL NULL NULL NULL NULL 2018-01-01 00:00:00
2010-06-01 14:00:00 NULL
+NULL NULL NULL NULL NULL NULL 2017-06-05 00:00:00
2011-11-10 18:00:08 NULL
+NULL NULL NULL NULL NULL NULL 2014-03-03 00:00:00
2016-07-04 13:00:00 NULL
+NULL NULL NULL NULL NULL NULL 2014-03-04 00:00:00
2018-07-08 11:00:00 2018-07-08 11:00:00
+NULL NULL NULL NULL NULL NULL 2024-05-31 00:00:00
2024-05-31 13:22:34.000000123 NULL