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

panxiaolei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new a9f0962167d [Fix](nereids) remove interface Nondeterministic and fix 
random/random_bytes foldable properties (#39944)
a9f0962167d is described below

commit a9f0962167d659d9a87ff3f1f8c3ffc6af601e4f
Author: zclllhhjj <zhaochan...@selectdb.com>
AuthorDate: Tue Aug 27 10:36:28 2024 +0800

    [Fix](nereids) remove interface Nondeterministic and fix 
random/random_bytes foldable properties (#39944)
    
    ## Proposed changes
    
    fix the conflict between #39801 and #39891
---
 .../expressions/functions/Nondeterministic.java    | 34 ----------------------
 .../trees/expressions/functions/scalar/Random.java |  5 ++++
 .../expressions/functions/scalar/RandomBytes.java  | 13 +++++++--
 3 files changed, 16 insertions(+), 36 deletions(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/Nondeterministic.java
 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/Nondeterministic.java
deleted file mode 100644
index 2d4e2df2fd6..00000000000
--- 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/Nondeterministic.java
+++ /dev/null
@@ -1,34 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-
-package org.apache.doris.nereids.trees.expressions.functions;
-
-/**
- * Nondeterministic functions.
- * <p>
- * e.g. 'rand()', 'random()'.
- */
-public interface Nondeterministic extends ExpressionTrait {
-
-    /**
-     * Identify the function is deterministic or not, such as UnixTimestamp, 
when it's children is not empty
-     * it's deterministic
-     */
-    default boolean isDeterministic() {
-        return false;
-    }
-}
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Random.java
 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Random.java
index d86eacec934..82cd56118f8 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Random.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Random.java
@@ -118,4 +118,9 @@ public class Random extends ScalarFunction
     public boolean isDeterministic() {
         return false;
     }
+
+    @Override
+    public boolean foldable() {
+        return false;
+    }
 }
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/RandomBytes.java
 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/RandomBytes.java
index 36b56bca752..000b83bbc34 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/RandomBytes.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/RandomBytes.java
@@ -20,7 +20,6 @@ package 
org.apache.doris.nereids.trees.expressions.functions.scalar;
 import org.apache.doris.catalog.FunctionSignature;
 import org.apache.doris.nereids.trees.expressions.Expression;
 import 
org.apache.doris.nereids.trees.expressions.functions.ExplicitlyCastableSignature;
-import org.apache.doris.nereids.trees.expressions.functions.Nondeterministic;
 import org.apache.doris.nereids.trees.expressions.functions.PropagateNullable;
 import org.apache.doris.nereids.trees.expressions.visitor.ExpressionVisitor;
 import org.apache.doris.nereids.types.IntegerType;
@@ -36,7 +35,7 @@ import java.util.List;
  * ScalarFunction 'random_bytes'. This class is generated by GenerateFunction.
  */
 public class RandomBytes extends ScalarFunction
-        implements ExplicitlyCastableSignature, PropagateNullable, 
Nondeterministic {
+        implements ExplicitlyCastableSignature, PropagateNullable {
 
     public static final List<FunctionSignature> SIGNATURES = ImmutableList.of(
             
FunctionSignature.ret(StringType.INSTANCE).args(IntegerType.INSTANCE),
@@ -60,6 +59,16 @@ public class RandomBytes extends ScalarFunction
         return new RandomBytes(children.get(0));
     }
 
+    @Override
+    public boolean isDeterministic() {
+        return false;
+    }
+
+    @Override
+    public boolean foldable() {
+        return false;
+    }
+
     @Override
     public List<FunctionSignature> getSignatures() {
         return SIGNATURES;


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

Reply via email to