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

morrysnow pushed a commit to branch 2.1_39318
in repository https://gitbox.apache.org/repos/asf/doris.git

commit 5a7adbc9073c44b0c1f6cac3b1764e1baecc43cb
Author: morrySnow <101034200+morrys...@users.noreply.github.com>
AuthorDate: Wed Aug 14 14:27:32 2024 +0800

    [fix](Nereids) support implicit cast ip types to string (#39318)
    
    pick from master #39318
---
 .../java/org/apache/doris/catalog/PrimitiveType.java     |  8 ++++++++
 regression-test/suites/nereids_syntax_p0/cast.groovy     | 16 ++++++++++++++++
 2 files changed, 24 insertions(+)

diff --git 
a/fe/fe-common/src/main/java/org/apache/doris/catalog/PrimitiveType.java 
b/fe/fe-common/src/main/java/org/apache/doris/catalog/PrimitiveType.java
index 33168654e10..b2666a7e722 100644
--- a/fe/fe-common/src/main/java/org/apache/doris/catalog/PrimitiveType.java
+++ b/fe/fe-common/src/main/java/org/apache/doris/catalog/PrimitiveType.java
@@ -591,6 +591,14 @@ public enum PrimitiveType {
         builder.put(VARIANT, STRING);
         builder.put(VARIANT, JSONB);
 
+        // ipv4
+        builder.put(IPV4, VARCHAR);
+        builder.put(IPV4, STRING);
+
+        // ipv6
+        builder.put(IPV6, VARCHAR);
+        builder.put(IPV6, STRING);
+
         // HLL
         builder.put(HLL, HLL);
 
diff --git a/regression-test/suites/nereids_syntax_p0/cast.groovy 
b/regression-test/suites/nereids_syntax_p0/cast.groovy
index 4a4192175b1..e4b4745557d 100644
--- a/regression-test/suites/nereids_syntax_p0/cast.groovy
+++ b/regression-test/suites/nereids_syntax_p0/cast.groovy
@@ -248,4 +248,20 @@ suite("cast") {
         sql """select cast(k11 as time) ct from test order by ct;"""
         exception "cannot cast"
     }
+
+    // ip
+
+    sql """drop table if exists ip_test"""
+    sql """
+        create table if not exists ip_test (a ipv6, b ipv4)  properties 
("replication_num" = "1");
+    """
+    sql """
+        insert into ip_test values('d916:b163:3ce8:e0f3:b953:fa0c:ab21:1ff9', 
"172.20.48.119");
+    """
+
+    sql """sync"""
+
+    sql """select ipv6_string_to_num(a), ipv4_string_to_num(b) from ip_test"""
+    sql """drop table if exists ip_test"""
 }
+


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

Reply via email to