This is an automated email from the ASF dual-hosted git repository. jackie pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/pinot.git
The following commit(s) were added to refs/heads/master by this push: new 0d3e4a3cff Fix a typo in JsonExtractKeyTransformFunction (#9856) 0d3e4a3cff is described below commit 0d3e4a3cff5e38c2656a5fac1ed7404e57654e9e Author: Xiaotian (Jackie) Jiang <17555551+jackie-ji...@users.noreply.github.com> AuthorDate: Wed Nov 23 16:07:40 2022 -0800 Fix a typo in JsonExtractKeyTransformFunction (#9856) --- .../function/JsonExtractKeyTransformFunction.java | 2 +- .../JsonExtractScalarTransformFunctionTest.java | 25 ++++++++++++---------- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/pinot-core/src/main/java/org/apache/pinot/core/operator/transform/function/JsonExtractKeyTransformFunction.java b/pinot-core/src/main/java/org/apache/pinot/core/operator/transform/function/JsonExtractKeyTransformFunction.java index 55a8d21e15..eedadfc487 100644 --- a/pinot-core/src/main/java/org/apache/pinot/core/operator/transform/function/JsonExtractKeyTransformFunction.java +++ b/pinot-core/src/main/java/org/apache/pinot/core/operator/transform/function/JsonExtractKeyTransformFunction.java @@ -87,7 +87,7 @@ public class JsonExtractKeyTransformFunction extends BaseTransformFunction { public String[][] transformToStringValuesMV(ProjectionBlock projectionBlock) { int length = projectionBlock.getNumDocs(); - if (_stringValuesMV == null || _stringValuesSV.length < length) { + if (_stringValuesMV == null) { _stringValuesMV = new String[length][]; } diff --git a/pinot-core/src/test/java/org/apache/pinot/core/operator/transform/function/JsonExtractScalarTransformFunctionTest.java b/pinot-core/src/test/java/org/apache/pinot/core/operator/transform/function/JsonExtractScalarTransformFunctionTest.java index c26238b532..12effbf8a5 100644 --- a/pinot-core/src/test/java/org/apache/pinot/core/operator/transform/function/JsonExtractScalarTransformFunctionTest.java +++ b/pinot-core/src/test/java/org/apache/pinot/core/operator/transform/function/JsonExtractScalarTransformFunctionTest.java @@ -365,17 +365,20 @@ public class JsonExtractScalarTransformFunctionTest extends BaseTransformFunctio TransformFunction transformFunction = TransformFunctionFactory.get(expression, _dataSourceMap); Assert.assertTrue(transformFunction instanceof JsonExtractKeyTransformFunction); Assert.assertEquals(transformFunction.getName(), JsonExtractKeyTransformFunction.FUNCTION_NAME); - String[][] keysResults = transformFunction.transformToStringValuesMV(_projectionBlock); - for (int i = 0; i < NUM_ROWS; i++) { - List<String> keys = Arrays.asList(keysResults[i]); - Assert.assertTrue(keys.contains(String.format("$['%s']", INT_SV_COLUMN))); - Assert.assertTrue(keys.contains(String.format("$['%s']", LONG_SV_COLUMN))); - Assert.assertTrue(keys.contains(String.format("$['%s']", FLOAT_SV_COLUMN))); - Assert.assertTrue(keys.contains(String.format("$['%s']", DOUBLE_SV_COLUMN))); - Assert.assertTrue(keys.contains(String.format("$['%s']", BIG_DECIMAL_SV_COLUMN))); - Assert.assertTrue(keys.contains(String.format("$['%s']", STRING_SV_COLUMN))); - Assert.assertTrue(keys.contains(String.format("$['%s']", INT_MV_COLUMN))); - Assert.assertTrue(keys.contains(String.format("$['%s']", TIME_COLUMN))); + // Transform the same block multiple times should give the same result + for (int i = 0; i < 10; i++) { + String[][] keysResults = transformFunction.transformToStringValuesMV(_projectionBlock); + for (int j = 0; j < NUM_ROWS; j++) { + List<String> keys = Arrays.asList(keysResults[j]); + Assert.assertTrue(keys.contains(String.format("$['%s']", INT_SV_COLUMN))); + Assert.assertTrue(keys.contains(String.format("$['%s']", LONG_SV_COLUMN))); + Assert.assertTrue(keys.contains(String.format("$['%s']", FLOAT_SV_COLUMN))); + Assert.assertTrue(keys.contains(String.format("$['%s']", DOUBLE_SV_COLUMN))); + Assert.assertTrue(keys.contains(String.format("$['%s']", BIG_DECIMAL_SV_COLUMN))); + Assert.assertTrue(keys.contains(String.format("$['%s']", STRING_SV_COLUMN))); + Assert.assertTrue(keys.contains(String.format("$['%s']", INT_MV_COLUMN))); + Assert.assertTrue(keys.contains(String.format("$['%s']", TIME_COLUMN))); + } } } --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For additional commands, e-mail: commits-h...@pinot.apache.org