This is an automated email from the ASF dual-hosted git repository.

kxiao pushed a commit to branch branch-2.0
in repository https://gitbox.apache.org/repos/asf/doris.git

commit 7ac818b74c6b1f5c778717513ab0bf7f6140acb0
Author: zy-kkk <zhongy...@gmail.com>
AuthorDate: Thu Jul 27 10:18:37 2023 +0800

    [improvement](jdbc catalog) improve mysql jdbc catalog read bytea`s types & 
else improve (#22233)
---
 .../src/main/java/org/apache/doris/jdbc/JdbcExecutor.java         | 7 ++++---
 .../main/java/org/apache/doris/external/jdbc/JdbcMySQLClient.java | 3 ---
 regression-test/data/jdbc_catalog_p0/test_mysql_jdbc_catalog.out  | 8 ++++----
 3 files changed, 8 insertions(+), 10 deletions(-)

diff --git 
a/fe/be-java-extensions/jdbc-scanner/src/main/java/org/apache/doris/jdbc/JdbcExecutor.java
 
b/fe/be-java-extensions/jdbc-scanner/src/main/java/org/apache/doris/jdbc/JdbcExecutor.java
index cc1071233e..42ade80066 100644
--- 
a/fe/be-java-extensions/jdbc-scanner/src/main/java/org/apache/doris/jdbc/JdbcExecutor.java
+++ 
b/fe/be-java-extensions/jdbc-scanner/src/main/java/org/apache/doris/jdbc/JdbcExecutor.java
@@ -460,7 +460,7 @@ public class JdbcExecutor {
     }
 
     private void setValidationQuery(DruidDataSource ds, TOdbcTableType 
tableType) {
-        if (tableType == TOdbcTableType.ORACLE) {
+        if (tableType == TOdbcTableType.ORACLE || tableType == 
TOdbcTableType.OCEANBASE_ORACLE) {
             ds.setValidationQuery("SELECT 1 FROM dual");
         } else if (tableType == TOdbcTableType.SAP_HANA) {
             ds.setValidationQuery("SELECT 1 FROM DUMMY");
@@ -1699,7 +1699,7 @@ public class JdbcExecutor {
             if (hex.length() == 1) {
                 hexString.append('0');
             }
-            hexString.append(hex);
+            hexString.append(hex.toUpperCase());
         }
         return hexString.toString();
     }
@@ -1724,7 +1724,8 @@ public class JdbcExecutor {
                 && tableType == TOdbcTableType.CLICKHOUSE) {
             // for clickhouse ipv4 and ipv6 type
             ipPutToString(column, isNullable, numRows, nullMapAddr, 
offsetsAddr, charsAddr);
-        } else if (column[firstNotNullIndex] instanceof byte[] && tableType == 
TOdbcTableType.MYSQL) {
+        } else if (column[firstNotNullIndex] instanceof byte[] && (tableType 
== TOdbcTableType.MYSQL
+                || tableType == TOdbcTableType.OCEANBASE)) {
             // for mysql bytea type
             byteaPutToMySQLString(column, isNullable, numRows, nullMapAddr, 
offsetsAddr, charsAddr);
         } else {
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/external/jdbc/JdbcMySQLClient.java 
b/fe/fe-core/src/main/java/org/apache/doris/external/jdbc/JdbcMySQLClient.java
index 5152e4b3e9..efbfcfd70c 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/external/jdbc/JdbcMySQLClient.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/external/jdbc/JdbcMySQLClient.java
@@ -324,10 +324,7 @@ public class JdbcMySQLClient extends JdbcClient {
             case "BLOB":
             case "MEDIUMBLOB":
             case "LONGBLOB":
-            case "TINYSTRING":
             case "STRING":
-            case "MEDIUMSTRING":
-            case "LONGSTRING":
             case "SET":
             case "BINARY":
             case "VARBINARY":
diff --git a/regression-test/data/jdbc_catalog_p0/test_mysql_jdbc_catalog.out 
b/regression-test/data/jdbc_catalog_p0/test_mysql_jdbc_catalog.out
index ae3ac39fbe..81ce6f369b 100644
--- a/regression-test/data/jdbc_catalog_p0/test_mysql_jdbc_catalog.out
+++ b/regression-test/data/jdbc_catalog_p0/test_mysql_jdbc_catalog.out
@@ -296,10 +296,10 @@ sys
 {"k1":"v1", "k2":"v2"}
 
 -- !mysql_all_types --
-\N     302     \N      502     602     4.14159 \N      6.14159 \N      -124    
-302    2013    -402    -502    -602    \N      2012-10-26T02:08:39.345700      
2013-10-26T08:09:18     -5.14145        \N      -7.1400 row2    \N      
09:11:09.567    text2   0xe86f6c6c6f20576f726c67        \N      \N      0x2f    
\N      0x88656c6c9f    Value3
-201    301     401     501     601     3.14159 4.1415926       5.14159 1       
-123    -301    2012    -401    -501    -601    2012-10-30      
2012-10-25T12:05:36.345700      2012-10-25T08:08:08     -4.14145        
-5.1400000001   -6.1400 row1    line1   09:09:09.567    text1   
0x48656c6c6f20576f726c64        {"age":30,"city":"London","name":"Alice"}       
Option1,Option3 0x2a    0x48656c6c6f00000000000000      0x48656c6c6f    Value2
-202    302     402     502     602     4.14159 5.1415926       6.14159 0       
-124    -302    2013    -402    -502    -602    2012-11-01      
2012-10-26T02:08:39.345700      2013-10-26T08:09:18     -5.14145        
-6.1400000001   -7.1400 row2    line2   09:11:09.567    text2   
0xe86f6c6c6f20576f726c67        {"age":18,"city":"ChongQing","name":"Gaoxin"}   
Option1,Option2 0x2f    0x58676c6c6f00000000000000      0x88656c6c9f    Value3
-203    303     403     503     603     7.14159 8.1415926       9.14159 0       
\N      -402    2017    -602    -902    -1102   2012-11-02      \N      
2013-10-27T08:11:18     -5.14145        -6.1400000000001        -7.1400 row3    
line3   09:11:09.567    text3   0xe86f6c6c6f20576f726c67        
{"age":24,"city":"ChongQing","name":"ChenQi"}   Option2 0x2f    
0x58676c6c6f00000000000000      \N      Value1
+\N     302     \N      502     602     4.14159 \N      6.14159 \N      -124    
-302    2013    -402    -502    -602    \N      2012-10-26T02:08:39.345700      
2013-10-26T08:09:18     -5.14145        \N      -7.1400 row2    \N      
09:11:09.567    text2   0xE86F6C6C6F20576F726C67        \N      \N      0x2F    
\N      0x88656C6C9F    Value3
+201    301     401     501     601     3.14159 4.1415926       5.14159 1       
-123    -301    2012    -401    -501    -601    2012-10-30      
2012-10-25T12:05:36.345700      2012-10-25T08:08:08     -4.14145        
-5.1400000001   -6.1400 row1    line1   09:09:09.567    text1   
0x48656C6C6F20576F726C64        {"age":30,"city":"London","name":"Alice"}       
Option1,Option3 0x2A    0x48656C6C6F00000000000000      0x48656C6C6F    Value2
+202    302     402     502     602     4.14159 5.1415926       6.14159 0       
-124    -302    2013    -402    -502    -602    2012-11-01      
2012-10-26T02:08:39.345700      2013-10-26T08:09:18     -5.14145        
-6.1400000001   -7.1400 row2    line2   09:11:09.567    text2   
0xE86F6C6C6F20576F726C67        {"age":18,"city":"ChongQing","name":"Gaoxin"}   
Option1,Option2 0x2F    0x58676C6C6F00000000000000      0x88656C6C9F    Value3
+203    303     403     503     603     7.14159 8.1415926       9.14159 0       
\N      -402    2017    -602    -902    -1102   2012-11-02      \N      
2013-10-27T08:11:18     -5.14145        -6.1400000000001        -7.1400 row3    
line3   09:11:09.567    text3   0xE86F6C6C6F20576F726C67        
{"age":24,"city":"ChongQing","name":"ChenQi"}   Option2 0x2F    
0x58676C6C6F00000000000000      \N      Value1
 
 -- !mysql_view --
 10086  4294967295      201


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to