Skip to content

Commit

Permalink
support json_valid and json_keys (#8491)
Browse files Browse the repository at this point in the history
close #8490
  • Loading branch information
SeaRise committed Dec 19, 2023
1 parent 6212eb1 commit 8a19c86
Show file tree
Hide file tree
Showing 9 changed files with 892 additions and 14 deletions.
9 changes: 5 additions & 4 deletions dbms/src/Flash/Coprocessor/DAGUtils.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -450,7 +450,8 @@ const std::unordered_map<tipb::ScalarFuncSig, String> scalar_func_map({
//{tipb::ScalarFuncSig::JsonMergeSig, "cast"},
//{tipb::ScalarFuncSig::JsonObjectSig, "cast"},
{tipb::ScalarFuncSig::JsonArraySig, "json_array"},
//{tipb::ScalarFuncSig::JsonValidJsonSig, "cast"},
{tipb::ScalarFuncSig::JsonValidJsonSig, "json_valid_json"},
{tipb::ScalarFuncSig::JsonValidOthersSig, "json_valid_others"},
//{tipb::ScalarFuncSig::JsonContainsSig, "cast"},
//{tipb::ScalarFuncSig::JsonArrayAppendSig, "cast"},
//{tipb::ScalarFuncSig::JsonArrayInsertSig, "cast"},
Expand All @@ -462,10 +463,10 @@ const std::unordered_map<tipb::ScalarFuncSig, String> scalar_func_map({
//{tipb::ScalarFuncSig::JsonSearchSig, "cast"},
//{tipb::ScalarFuncSig::JsonStorageSizeSig, "cast"},
{tipb::ScalarFuncSig::JsonDepthSig, "json_depth"},
//{tipb::ScalarFuncSig::JsonKeysSig, "cast"},
{tipb::ScalarFuncSig::JsonKeysSig, "json_keys"},
{tipb::ScalarFuncSig::JsonLengthSig, "jsonLength"},
//{tipb::ScalarFuncSig::JsonKeys2ArgsSig, "cast"},
//{tipb::ScalarFuncSig::JsonValidStringSig, "cast"},
{tipb::ScalarFuncSig::JsonKeys2ArgsSig, "json_keys_2_args"},
{tipb::ScalarFuncSig::JsonValidStringSig, "json_valid_string"},

{tipb::ScalarFuncSig::DateFormatSig, "dateFormat"},
//{tipb::ScalarFuncSig::DateLiteral, "cast"},
Expand Down
5 changes: 5 additions & 0 deletions dbms/src/Functions/FunctionsJson.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,10 @@ void registerFunctionsJson(FunctionFactory & factory)
factory.registerFunction<FunctionCastTimeAsJson>();
factory.registerFunction<FunctionCastDurationAsJson>();
factory.registerFunction<FunctionJsonDepth>();
factory.registerFunction<FunctionJsonValidOthers>();
factory.registerFunction<FunctionJsonValidJson>();
factory.registerFunction<FunctionJsonValidString>();
factory.registerFunction<FunctionJsonKeys>();
factory.registerFunction<FunctionJsonKeys2Args>();
}
} // namespace DB

0 comments on commit 8a19c86

Please sign in to comment.