diff --git a/be/src/vec/functions/function_json.cpp b/be/src/vec/functions/function_json.cpp index e78bd1ba82..e4f955ae0a 100644 --- a/be/src/vec/functions/function_json.cpp +++ b/be/src/vec/functions/function_json.cpp @@ -547,7 +547,9 @@ struct JsonParser<'1'> { // bool static void update_value(StringParser::ParseResult& result, rapidjson::Value& value, StringRef data, rapidjson::Document::AllocatorType& allocator) { - value.SetBool((*data.data == '1') ? true : false); + DCHECK(data.size == 1 || strncmp(data.data, "true", 4) == 0 || + strncmp(data.data, "false", 5) == 0); + value.SetBool((*data.data == '1' || *data.data == 't') ? true : false); } };