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

jshao pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/gravitino.git


The following commit(s) were added to refs/heads/main by this push:
     new be305faf5 [#4913] fix(API): fix call bucketTransform arguments failed 
(#5268)
be305faf5 is described below

commit be305faf58d0d17a45b9667a295fbacb7e4e3ff2
Author: mchades <[email protected]>
AuthorDate: Fri Oct 25 17:15:05 2024 +0800

    [#4913] fix(API): fix call bucketTransform arguments failed (#5268)
    
    ### What changes were proposed in this pull request?
    
    fix call bucketTransform arguments failed
    
    ### Why are the changes needed?
    
    Fix: #4913
    
    ### Does this PR introduce _any_ user-facing change?
    
    no
    
    ### How was this patch tested?
    
    tests added
---
 .../gravitino/rel/expressions/transforms/Transforms.java   |  2 +-
 .../test/java/org/apache/gravitino/rel/TestTransforms.java | 14 ++++++++++++++
 2 files changed, 15 insertions(+), 1 deletion(-)

diff --git 
a/api/src/main/java/org/apache/gravitino/rel/expressions/transforms/Transforms.java
 
b/api/src/main/java/org/apache/gravitino/rel/expressions/transforms/Transforms.java
index 73cb33b55..035b33059 100644
--- 
a/api/src/main/java/org/apache/gravitino/rel/expressions/transforms/Transforms.java
+++ 
b/api/src/main/java/org/apache/gravitino/rel/expressions/transforms/Transforms.java
@@ -447,7 +447,7 @@ public class Transforms {
     /** @return The arguments to the transform. */
     @Override
     public Expression[] arguments() {
-      return ObjectArrays.concat(numBuckets, fields);
+      return ObjectArrays.concat(new Expression[] {numBuckets}, fields, 
Expression.class);
     }
 
     @Override
diff --git a/api/src/test/java/org/apache/gravitino/rel/TestTransforms.java 
b/api/src/test/java/org/apache/gravitino/rel/TestTransforms.java
index 615e2e390..6404ac555 100644
--- a/api/src/test/java/org/apache/gravitino/rel/TestTransforms.java
+++ b/api/src/test/java/org/apache/gravitino/rel/TestTransforms.java
@@ -35,11 +35,25 @@ import org.apache.gravitino.rel.expressions.Expression;
 import org.apache.gravitino.rel.expressions.NamedReference;
 import org.apache.gravitino.rel.expressions.literals.Literals;
 import org.apache.gravitino.rel.expressions.transforms.Transform;
+import org.apache.gravitino.rel.expressions.transforms.Transforms;
 import org.apache.gravitino.rel.types.Types;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 
 public class TestTransforms {
+  @Test
+  public void testBucketTransform() {
+    Column column = Column.of("col_1", Types.ByteType.get());
+    String[] fieldName = new String[] {column.name()};
+
+    Transform bucket = Transforms.bucket(10, fieldName);
+    Expression[] arguments = bucket.arguments();
+    Assertions.assertEquals(2, arguments.length);
+    Assertions.assertInstanceOf(Literals.LiteralImpl.class, arguments[0]);
+    Assertions.assertEquals(10, ((Literals.LiteralImpl<Integer>) 
arguments[0]).value());
+    Assertions.assertEquals(fieldName, ((NamedReference.FieldReference) 
arguments[1]).fieldName());
+  }
+
   @Test
   public void testSingleFieldTransform() {
     Column column = Column.of("col_1", Types.ByteType.get());

Reply via email to