branch-2.1: [fix](Nereids) use StringLikeLiteral as parameter type in constant folding #49413 (#49447)

Cherry-picked from #49413

Co-authored-by: morrySnow <zhangwenxin@selectdb.com>
This commit is contained in:
github-actions[bot]
2025-03-29 08:58:39 +08:00
committed by GitHub
parent 4a31fc4e09
commit 646f49fb93

View File

@ -403,7 +403,7 @@ public class StringArithmetic {
* Executable arithmetic functions ConcatWs
*/
@ExecFunction(name = "concat_ws")
public static Expression concatWsVarcharVarchar(StringLikeLiteral first, VarcharLiteral... second) {
public static Expression concatWsVarcharVarchar(StringLikeLiteral first, StringLikeLiteral... second) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < second.length - 1; i++) {
sb.append(second[i].getValue());
@ -467,7 +467,7 @@ public class StringArithmetic {
* Executable arithmetic functions md5
*/
@ExecFunction(name = "md5sum")
public static Expression md5Sum(VarcharLiteral... first) {
public static Expression md5Sum(StringLikeLiteral... first) {
try {
// Step 1: Create a MessageDigest instance for MD5
MessageDigest md = MessageDigest.getInstance("MD5");
@ -609,7 +609,7 @@ public class StringArithmetic {
* Executable arithmetic functions field
*/
@ExecFunction(name = "field")
public static Expression fieldVarchar(StringLikeLiteral first, VarcharLiteral... second) {
public static Expression fieldVarchar(StringLikeLiteral first, StringLikeLiteral... second) {
return new IntegerLiteral(compareLiteral(first, second));
}