Skip to content

Commit 7e6e9ac

Browse files
committed
updated with try catch for string parsing.
Signed-off-by: Asif Bashar <asif.bashar@gmail.com>
1 parent 08429c1 commit 7e6e9ac

File tree

2 files changed

+8
-3
lines changed

2 files changed

+8
-3
lines changed

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

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,11 @@ public static String toString(int num, String format) {
108108

109109
@Strict
110110
public static String toString(String str, String format) {
111-
BigDecimal bd = new BigDecimal(str);
112-
return toString(bd, format);
111+
try {
112+
BigDecimal bd = new BigDecimal(str);
113+
return toString(bd, format);
114+
} catch (Exception e) {
115+
return null;
116+
}
113117
}
114118
}

ppl/src/test/java/org/opensearch/sql/ppl/calcite/CalcitePPLStringFunctionTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,8 @@ public void testToStringFormatNotSpecified() {
5555
+ " fields string_value, cast_value";
5656
RelNode root = getRelNode(ppl);
5757
String expectedLogical =
58-
"LogicalProject(string_value=[CAST($3):VARCHAR], cast_value=[SAFE_CAST($3)])\n LogicalTableScan(table=[[scott, EMP]])\n";
58+
"LogicalProject(string_value=[CAST($3):VARCHAR], cast_value=[SAFE_CAST($3)])\n"
59+
+ " LogicalTableScan(table=[[scott, EMP]])\n";
5960
String expectedResult =
6061
"string_value=7902; cast_value=7902\n"
6162
+ "string_value=7698; cast_value=7698\n"

0 commit comments

Comments
 (0)