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

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


The following commit(s) were added to refs/heads/branch-4.1 by this push:
     new a7af9f66ca1 branch-4.1: [fix](Expr) add SerDe for ColumnRefExpr and 
Expr SerDe unit test #62900 (#63127)
a7af9f66ca1 is described below

commit a7af9f66ca1b9f4f84144cd2e7b4c2bf1b2089a3
Author: morrySnow <[email protected]>
AuthorDate: Wed May 20 17:23:21 2026 +0800

    branch-4.1: [fix](Expr) add SerDe for ColumnRefExpr and Expr SerDe unit 
test #62900 (#63127)
    
    picked from #62900
---
 .../src/main/java/org/apache/doris/analysis/ColumnRefExpr.java     | 5 +++++
 .../src/main/java/org/apache/doris/persist/gson/GsonUtils.java     | 7 ++++++-
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/analysis/ColumnRefExpr.java 
b/fe/fe-core/src/main/java/org/apache/doris/analysis/ColumnRefExpr.java
index 59cf7e4dee0..9a2443fddaa 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/ColumnRefExpr.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/ColumnRefExpr.java
@@ -24,11 +24,16 @@ import org.apache.doris.thrift.TColumnRef;
 import org.apache.doris.thrift.TExprNode;
 import org.apache.doris.thrift.TExprNodeType;
 
+import com.google.gson.annotations.SerializedName;
+
 import java.util.Optional;
 
 public class ColumnRefExpr extends Expr {
+    @SerializedName("cn")
     private String columnName;
+    @SerializedName("ci")
     private int columnId;
+    @SerializedName("in")
     private boolean isNullable;
 
     public ColumnRefExpr() {
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/persist/gson/GsonUtils.java 
b/fe/fe-core/src/main/java/org/apache/doris/persist/gson/GsonUtils.java
index dcdce47698b..502df58765f 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/persist/gson/GsonUtils.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/persist/gson/GsonUtils.java
@@ -29,6 +29,7 @@ import org.apache.doris.analysis.BinaryPredicate;
 import org.apache.doris.analysis.BoolLiteral;
 import org.apache.doris.analysis.CaseExpr;
 import org.apache.doris.analysis.CastExpr;
+import org.apache.doris.analysis.ColumnRefExpr;
 import org.apache.doris.analysis.CompoundPredicate;
 import org.apache.doris.analysis.DateLiteral;
 import org.apache.doris.analysis.DecimalLiteral;
@@ -58,6 +59,7 @@ import org.apache.doris.analysis.SlotRef;
 import org.apache.doris.analysis.StringLiteral;
 import org.apache.doris.analysis.StructLiteral;
 import org.apache.doris.analysis.TimestampArithmeticExpr;
+import org.apache.doris.analysis.VariableExpr;
 import org.apache.doris.analysis.VirtualSlotRef;
 import org.apache.doris.backup.BackupJob;
 import org.apache.doris.backup.RestoreJob;
@@ -345,7 +347,10 @@ public class GsonUtils {
             .registerSubtype(ArithmeticExpr.class, 
ArithmeticExpr.class.getSimpleName())
             .registerSubtype(SlotRef.class, SlotRef.class.getSimpleName())
             .registerSubtype(VirtualSlotRef.class, 
VirtualSlotRef.class.getSimpleName())
-            .registerSubtype(InformationFunction.class, 
InformationFunction.class.getSimpleName());
+            .registerSubtype(InformationFunction.class, 
InformationFunction.class.getSimpleName())
+            .registerSubtype(ColumnRefExpr.class, 
ColumnRefExpr.class.getSimpleName())
+            .registerSubtype(VariableExpr.class, 
VariableExpr.class.getSimpleName());
+
 
     // runtime adapter for class "DistributionInfo"
     private static RuntimeTypeAdapterFactory<DistributionInfo> 
distributionInfoTypeAdapterFactory


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to