Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -358,12 +358,20 @@ private LinkedHashMap<String, String> prepareColumnsForOracle() {
columns.put("col19", "TIMESTAMP"); // override to TIME
columns.put("col20", "TIMESTAMP WITH TIME ZONE");
columns.put("col21", "TIMESTAMP WITH LOCAL TIME ZONE");
columns.put("col22", "NUMBER(1)"); // override to BOOLEAN
return columns;
}

private Map<String, DataType> prepareOverrideColumnsTypeForOracle() {
return ImmutableMap.of(
"col16", DataType.TIME, "col17", DataType.TIMESTAMP, "col19", DataType.TIME);
"col16",
DataType.TIME,
"col17",
DataType.TIMESTAMP,
"col19",
DataType.TIME,
"col22",
DataType.BOOLEAN);
}

private TableMetadata prepareTableMetadataForOracle() {
Expand Down Expand Up @@ -391,6 +399,7 @@ private TableMetadata prepareTableMetadataForOracle() {
.addColumn("col19", DataType.TIME)
.addColumn("col20", DataType.TIMESTAMPTZ)
.addColumn("col21", DataType.TIMESTAMPTZ)
.addColumn("col22", DataType.BOOLEAN)
.addPartitionKey("pk1")
.addPartitionKey("pk2")
.build();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -308,6 +308,9 @@ DataType getDataTypeForScalarDbInternal(
numericTypeDescription, columnDescription));
}
if (digits == 0) {
if (columnSize == 1 && overrideDataType == DataType.BOOLEAN) {
return DataType.BOOLEAN;
}
logger.info(
"Data type larger than that of underlying database is assigned: {} to BIGINT",
numericTypeDescription);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,9 @@ private static void prepareDataTypeMap() {
DATA_TYPE_MAP.get(POSTGRESQL).put(new Column(JDBCType.BIT, "bool", 1, 0), DataType.BOOLEAN);
DATA_TYPE_MAP.get(SQL_SERVER).put(new Column(JDBCType.BIT, "bit", 1, 0), DataType.BOOLEAN);
DATA_TYPE_MAP.get(DB2).put(new Column(JDBCType.BOOLEAN, "BOOLEAN"), DataType.BOOLEAN);
DATA_TYPE_MAP
.get(ORACLE)
.put(new Column(JDBCType.NUMERIC, "NUMBER", 1, 0, DataType.BOOLEAN), DataType.BOOLEAN);

// INT
DATA_TYPE_MAP.get(MYSQL).put(new Column(JDBCType.TINYINT, "TINYINT"), DataType.INT);
Expand Down Expand Up @@ -203,6 +206,7 @@ private static void prepareDataTypeMap() {
DATA_TYPE_MAP.get(ORACLE).put(new Column(JDBCType.NUMERIC, "NUMBER", 15, 0), DataType.BIGINT);
DATA_TYPE_MAP.get(ORACLE).put(new Column(JDBCType.NUMERIC, "NUMBER", 15, 2), DataType.DOUBLE);
DATA_TYPE_MAP.get(ORACLE).put(new Column(JDBCType.NUMERIC, "NUMBER", 16, 0), null);
DATA_TYPE_MAP.get(ORACLE).put(new Column(JDBCType.NUMERIC, "NUMBER", 1, 0), DataType.BIGINT);
DATA_TYPE_MAP.get(SQL_SERVER).put(new Column(JDBCType.NUMERIC, "numeric"), null);
DATA_TYPE_MAP.get(SQL_SERVER).put(new Column(JDBCType.DECIMAL, "decimal"), null);
DATA_TYPE_MAP.get(DB2).put(new Column(JDBCType.DECIMAL, "DECIMAL"), null);
Expand Down