Hisoka-X commented on code in PR #9270:
URL: https://github.com/apache/seatunnel/pull/9270#discussion_r2083849660
##########
seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/internal/dialect/oracle/OracleDialect.java:
##########
@@ -72,7 +82,8 @@ public JdbcRowConverter getRowConverter() {
@Override
public TypeConverter<BasicTypeDefine> getTypeConverter() {
- return OracleTypeConverter.INSTANCE;
+ log.info("Creating OracleTypeConverter with handleBlobAsString={}",
handleBlobAsString);
Review Comment:
```suggestion
```
##########
.github/actions/get-workflow-origin:
##########
Review Comment:
please do not update action
##########
seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/internal/dialect/oracle/OracleTypeMapper.java:
##########
@@ -33,18 +33,34 @@
public class OracleTypeMapper implements JdbcDialectTypeMapper {
private final boolean decimalTypeNarrowing;
+ private final boolean handleBlobAsString;
public OracleTypeMapper() {
- this(JdbcOptions.DECIMAL_TYPE_NARROWING.defaultValue());
+ this(
+ JdbcOptions.DECIMAL_TYPE_NARROWING.defaultValue(),
+ JdbcOptions.HANDLE_BLOB_AS_STRING.defaultValue());
}
public OracleTypeMapper(boolean decimalTypeNarrowing) {
+ this(decimalTypeNarrowing,
JdbcOptions.HANDLE_BLOB_AS_STRING.defaultValue());
+ }
+
+ public OracleTypeMapper(boolean decimalTypeNarrowing, boolean
handleBlobAsString) {
this.decimalTypeNarrowing = decimalTypeNarrowing;
+ this.handleBlobAsString = handleBlobAsString;
+ log.info(
+ "Initializing OracleTypeMapper with handleBlobAsString={}",
+ this.handleBlobAsString);
Review Comment:
```suggestion
```
##########
seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/internal/dialect/oracle/OracleTypeConverter.java:
##########
@@ -87,13 +88,22 @@ public class OracleTypeConverter implements
TypeConverter<BasicTypeDefine> {
public static final OracleTypeConverter INSTANCE = new
OracleTypeConverter();
private final boolean decimalTypeNarrowing;
+ private final boolean handleBlobAsString;
public OracleTypeConverter() {
- this(true);
+ this(true, JdbcOptions.HANDLE_BLOB_AS_STRING.defaultValue());
}
public OracleTypeConverter(boolean decimalTypeNarrowing) {
+ this(decimalTypeNarrowing,
JdbcOptions.HANDLE_BLOB_AS_STRING.defaultValue());
+ }
+
+ public OracleTypeConverter(boolean decimalTypeNarrowing, boolean
handleBlobAsString) {
this.decimalTypeNarrowing = decimalTypeNarrowing;
+ this.handleBlobAsString = handleBlobAsString;
+ log.info(
+ "Initializing OracleTypeConverter with handleBlobAsString={}",
+ this.handleBlobAsString);
Review Comment:
```suggestion
```
##########
seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/internal/dialect/oracle/OracleDialect.java:
##########
@@ -53,12 +54,21 @@ public class OracleDialect implements JdbcDialect {
private static final int DEFAULT_ORACLE_FETCH_SIZE = 128;
public String fieldIde = FieldIdeEnum.ORIGINAL.getValue();
+ private final boolean handleBlobAsString;
public OracleDialect(String fieldIde) {
- this.fieldIde = fieldIde;
+ this(fieldIde, JdbcOptions.HANDLE_BLOB_AS_STRING.defaultValue());
+ }
+
+ public OracleDialect() {
+ this(FieldIdeEnum.ORIGINAL.getValue(),
JdbcOptions.HANDLE_BLOB_AS_STRING.defaultValue());
}
- public OracleDialect() {}
+ public OracleDialect(String fieldIde, boolean handleBlobAsString) {
+ this.fieldIde = fieldIde;
+ this.handleBlobAsString = handleBlobAsString;
+ log.info("Initializing OracleDialect with handleBlobAsString={}",
this.handleBlobAsString);
Review Comment:
```suggestion
```
##########
seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/internal/dialect/oracle/OracleTypeMapper.java:
##########
@@ -33,18 +33,34 @@
public class OracleTypeMapper implements JdbcDialectTypeMapper {
private final boolean decimalTypeNarrowing;
+ private final boolean handleBlobAsString;
public OracleTypeMapper() {
- this(JdbcOptions.DECIMAL_TYPE_NARROWING.defaultValue());
+ this(
+ JdbcOptions.DECIMAL_TYPE_NARROWING.defaultValue(),
+ JdbcOptions.HANDLE_BLOB_AS_STRING.defaultValue());
}
public OracleTypeMapper(boolean decimalTypeNarrowing) {
+ this(decimalTypeNarrowing,
JdbcOptions.HANDLE_BLOB_AS_STRING.defaultValue());
+ }
+
+ public OracleTypeMapper(boolean decimalTypeNarrowing, boolean
handleBlobAsString) {
this.decimalTypeNarrowing = decimalTypeNarrowing;
+ this.handleBlobAsString = handleBlobAsString;
+ log.info(
+ "Initializing OracleTypeMapper with handleBlobAsString={}",
+ this.handleBlobAsString);
}
@Override
public Column mappingColumn(BasicTypeDefine typeDefine) {
- return new
OracleTypeConverter(decimalTypeNarrowing).convert(typeDefine);
+ log.debug(
+ "Mapping column {} with handleBlobAsString={}",
+ typeDefine.getName(),
+ handleBlobAsString);
Review Comment:
```suggestion
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]