Skip to content

Commit 2740f75

Browse files
committed
fix IT
Signed-off-by: Lantao Jin <ltjin@amazon.com>
1 parent 2879bc5 commit 2740f75

3 files changed

Lines changed: 9 additions & 3 deletions

File tree

core/src/main/java/org/opensearch/sql/expression/function/udf/datetime/FromUnixTimeFunction.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import static org.opensearch.sql.expression.datetime.DateTimeFunctions.exprFromUnixTime;
1111
import static org.opensearch.sql.expression.datetime.DateTimeFunctions.exprFromUnixTimeFormat;
1212

13+
import java.math.BigDecimal;
1314
import java.util.List;
1415
import org.apache.calcite.adapter.enumerable.NotNullImplementor;
1516
import org.apache.calcite.adapter.enumerable.NullPolicy;
@@ -60,6 +61,10 @@ public static String fromUnixTime(double unixTime) {
6061
return (String) exprFromUnixTime(new ExprDoubleValue(unixTime)).valueForCalcite();
6162
}
6263

64+
public static String fromUnixTime(BigDecimal unixTime) {
65+
return (String) exprFromUnixTime(new ExprDoubleValue(unixTime)).valueForCalcite();
66+
}
67+
6368
public static String fromUnixTime(double unixTime, String format) {
6469
return (String)
6570
exprFromUnixTimeFormat(new ExprDoubleValue(unixTime), new ExprStringValue(format))

core/src/main/java/org/opensearch/sql/expression/function/udf/datetime/SecToTimeFunction.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
import org.apache.calcite.linq4j.tree.Expressions;
1717
import org.apache.calcite.rex.RexCall;
1818
import org.apache.calcite.sql.type.SqlReturnTypeInference;
19+
import org.opensearch.sql.calcite.utils.MathUtils;
1920
import org.opensearch.sql.calcite.utils.PPLReturnTypes;
2021
import org.opensearch.sql.data.model.ExprValue;
2122
import org.opensearch.sql.data.model.ExprValueUtils;
@@ -55,7 +56,7 @@ public Expression implement(
5556
public static String secToTime(Number seconds) {
5657
ExprValue returnTimeValue;
5758
ExprValue transferredValue = ExprValueUtils.fromObjectValue(seconds);
58-
if (seconds instanceof Long || seconds instanceof Integer) {
59+
if (MathUtils.isIntegral(seconds)) {
5960
returnTimeValue = exprSecToTime(transferredValue);
6061
} else {
6162
returnTimeValue = exprSecToTimeWithNanos(transferredValue);

integ-test/src/test/java/org/opensearch/sql/calcite/standalone/CalcitePPLExplainPushdownIT.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public void testExplainCommand() {
2828
+ " \"physical\": \"CalciteEnumerableIndexScan(table=[[OpenSearch, test]],"
2929
+ " PushDownContext=[[PROJECT->[name, age], FILTER->=($1, 20)],"
3030
+ " OpenSearchRequestBuilder(sourceBuilder={\\\"from\\\":0,\\\"timeout\\\":\\\"1m\\\",\\\"query\\\":{\\\"term\\\":{\\\"age\\\":{\\\"value\\\":20,\\\"boost\\\":1.0}}},\\\"_source\\\":{\\\"includes\\\":[\\\"name\\\",\\\"age\\\"],\\\"excludes\\\":[]},\\\"sort\\\":[{\\\"_doc\\\":{\\\"order\\\":\\\"asc\\\"}}]},"
31-
+ " requestedTotalSize=200, pageSize=null, startFrom=0)])\\n"
31+
+ " requestedTotalSize=2000, pageSize=null, startFrom=0)])\\n"
3232
+ "\"\n"
3333
+ " }\n"
3434
+ "}",
@@ -52,7 +52,7 @@ public void testExplainCommandCost() {
5252
+ " \"physical\": \"CalciteEnumerableIndexScan(table=[[OpenSearch, test]],"
5353
+ " PushDownContext=[[PROJECT->[name, age], FILTER->=($1, 20)],"
5454
+ " OpenSearchRequestBuilder(sourceBuilder={\\\"from\\\":0,\\\"timeout\\\":\\\"1m\\\",\\\"query\\\":{\\\"term\\\":{\\\"age\\\":{\\\"value\\\":20,\\\"boost\\\":1.0}}},\\\"_source\\\":{\\\"includes\\\":[\\\"name\\\",\\\"age\\\"],\\\"excludes\\\":[]},\\\"sort\\\":[{\\\"_doc\\\":{\\\"order\\\":\\\"asc\\\"}}]},"
55-
+ " requestedTotalSize=200, pageSize=null, startFrom=0)]): rowcount = 1215.0,"
55+
+ " requestedTotalSize=2000, pageSize=null, startFrom=0)]): rowcount = 1215.0,"
5656
+ " cumulative cost = {1215.0 rows, 1216.0 cpu, 0.0 io}, id = *\\n"
5757
+ "\"\n"
5858
+ " }\n"

0 commit comments

Comments
 (0)