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]

Reply via email to