This is an automated email from the ASF dual-hosted git repository.
wanghailin pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/seatunnel.git
The following commit(s) were added to refs/heads/dev by this push:
new 2d704e36bd [Fix] Fix read from Oracle Date type value lose time (#5814)
2d704e36bd is described below
commit 2d704e36bdbc3aa1bacbf620aa5c3423a88ae4c3
Author: Jia Fan <[email protected]>
AuthorDate: Sat Nov 11 17:45:55 2023 +0800
[Fix] Fix read from Oracle Date type value lose time (#5814)
---
.../catalog/oracle/OracleDataTypeConvertor.java | 1 -
.../internal/dialect/oracle/OracleTypeMapper.java | 2 --
.../connectors/seatunnel/jdbc/JdbcOracleIT.java | 38 ++++++++++++----------
3 files changed, 20 insertions(+), 21 deletions(-)
diff --git
a/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/catalog/oracle/OracleDataTypeConvertor.java
b/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/catalog/oracle/OracleDataTypeConvertor.java
index 45f6c06d69..e85c8695a5 100644
---
a/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/catalog/oracle/OracleDataTypeConvertor.java
+++
b/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/catalog/oracle/OracleDataTypeConvertor.java
@@ -125,7 +125,6 @@ public class OracleDataTypeConvertor implements
DataTypeConvertor<String> {
case ORACLE_XML:
return BasicType.STRING_TYPE;
case ORACLE_DATE:
- return LocalTimeType.LOCAL_DATE_TYPE;
case ORACLE_TIMESTAMP:
case ORACLE_TIMESTAMP_WITH_LOCAL_TIME_ZONE:
return LocalTimeType.LOCAL_DATE_TIME_TYPE;
diff --git
a/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/internal/dialect/oracle/OracleTypeMapper.java
b/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/internal/dialect/oracle/OracleTypeMapper.java
index dfa9b876fa..fc71065011 100644
---
a/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/internal/dialect/oracle/OracleTypeMapper.java
+++
b/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/internal/dialect/oracle/OracleTypeMapper.java
@@ -73,7 +73,6 @@ public class OracleTypeMapper implements
JdbcDialectTypeMapper {
public SeaTunnelDataType<?> mapping(ResultSetMetaData metadata, int
colIndex)
throws SQLException {
String oracleType = metadata.getColumnTypeName(colIndex).toUpperCase();
- String columnName = metadata.getColumnName(colIndex);
int precision = metadata.getPrecision(colIndex);
int scale = metadata.getScale(colIndex);
switch (oracleType) {
@@ -110,7 +109,6 @@ public class OracleTypeMapper implements
JdbcDialectTypeMapper {
case ORACLE_XML:
return BasicType.STRING_TYPE;
case ORACLE_DATE:
- return LocalTimeType.LOCAL_DATE_TYPE;
case ORACLE_TIMESTAMP:
case ORACLE_TIMESTAMP_WITH_LOCAL_TIME_ZONE:
return LocalTimeType.LOCAL_DATE_TIME_TYPE;
diff --git
a/seatunnel-e2e/seatunnel-connector-v2-e2e/connector-jdbc-e2e/connector-jdbc-e2e-part-1/src/test/java/org/apache/seatunnel/connectors/seatunnel/jdbc/JdbcOracleIT.java
b/seatunnel-e2e/seatunnel-connector-v2-e2e/connector-jdbc-e2e/connector-jdbc-e2e-part-1/src/test/java/org/apache/seatunnel/connectors/seatunnel/jdbc/JdbcOracleIT.java
index 6866bbf934..ca7bda75c2 100644
---
a/seatunnel-e2e/seatunnel-connector-v2-e2e/connector-jdbc-e2e/connector-jdbc-e2e-part-1/src/test/java/org/apache/seatunnel/connectors/seatunnel/jdbc/JdbcOracleIT.java
+++
b/seatunnel-e2e/seatunnel-connector-v2-e2e/connector-jdbc-e2e/connector-jdbc-e2e-part-1/src/test/java/org/apache/seatunnel/connectors/seatunnel/jdbc/JdbcOracleIT.java
@@ -78,6 +78,23 @@ public class JdbcOracleIT extends AbstractJdbcIT {
+ " XML_TYPE_COL \"SYS\".\"XMLTYPE\"\n"
+ ")";
+ private static final String[] fieldNames =
+ new String[] {
+ "VARCHAR_10_COL",
+ "CHAR_10_COL",
+ "CLOB_COL",
+ "NUMBER_3_SF_2_DP",
+ "INTEGER_COL",
+ "FLOAT_COL",
+ "REAL_COL",
+ "BINARY_FLOAT_COL",
+ "BINARY_DOUBLE_COL",
+ "DATE_COL",
+ "TIMESTAMP_WITH_3_FRAC_SEC_COL",
+ "TIMESTAMP_WITH_LOCAL_TZ",
+ "XML_TYPE_COL"
+ };
+
@Override
JdbcCase getJdbcCase() {
Map<String, String> containerEnv = new HashMap<>();
@@ -117,7 +134,9 @@ public class JdbcOracleIT extends AbstractJdbcIT {
}
@Override
- void compareResult(String executeKey) {}
+ void compareResult(String executeKey) {
+ defaultCompare(executeKey, fieldNames, "INTEGER_COL");
+ }
@Override
String driverUrl() {
@@ -126,23 +145,6 @@ public class JdbcOracleIT extends AbstractJdbcIT {
@Override
Pair<String[], List<SeaTunnelRow>> initTestData() {
- String[] fieldNames =
- new String[] {
- "VARCHAR_10_COL",
- "CHAR_10_COL",
- "CLOB_COL",
- "NUMBER_3_SF_2_DP",
- "INTEGER_COL",
- "FLOAT_COL",
- "REAL_COL",
- "BINARY_FLOAT_COL",
- "BINARY_DOUBLE_COL",
- "DATE_COL",
- "TIMESTAMP_WITH_3_FRAC_SEC_COL",
- "TIMESTAMP_WITH_LOCAL_TZ",
- "XML_TYPE_COL"
- };
-
List<SeaTunnelRow> rows = new ArrayList<>();
for (int i = 0; i < 100; i++) {
SeaTunnelRow row =