-
Notifications
You must be signed in to change notification settings - Fork 3.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[fix](json) fix invalid json which should not be insert #39932
base: master
Are you sure you want to change the base?
Conversation
Thank you for your contribution to Apache Doris. Since 2024-03-18, the Document has been moved to doris-website. |
clang-tidy review says "All clean, LGTM! 👍" |
clang-tidy review says "All clean, LGTM! 👍" |
run buildall |
clang-tidy review says "All clean, LGTM! 👍" |
TPC-H: Total hot run time: 38192 ms
|
TPC-DS: Total hot run time: 191164 ms
|
ClickBench: Total hot run time: 30.67 s
|
@@ -32,6 +34,13 @@ public class JsonLiteral extends Literal { | |||
|
|||
private static final ObjectMapper MAPPER = new ObjectMapper(); | |||
|
|||
static { | |||
// 启用严格的 JSON 验证配置 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
use english
static { | ||
// 启用严格的 JSON 验证配置 | ||
MAPPER.enable(DeserializationFeature.FAIL_ON_TRAILING_TOKENS); | ||
MAPPER.enable(JsonParser.Feature.STRICT_DUPLICATE_DETECTION); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this should be remove since be accept duplicate key in json
MAPPER.enable(JsonParser.Feature.STRICT_DUPLICATE_DETECTION); | ||
MAPPER.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this should be removed because it is used for java object deserialization
@@ -69,6 +69,9 @@ endif() | |||
# enable glog custom prefix | |||
add_definitions(-DGLOG_CUSTOM_PREFIX_SUPPORT) | |||
|
|||
# enable simdjson check eof | |||
add_definitions(-DSIMDJSON_CHECK_EOF) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The official comment in simdjson does not suggest turn it on.
option(SIMDJSON_CHECK_EOF "Check for the end of the input buffer. The setting is unnecessary since we require padding of the inputs. You should expect tests to fail with this option turned on." OFF)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if we do not add this, we should check in our logic for input string buffer which has error ending
clang-tidy review says "All clean, LGTM! 👍" |
Proposed changes
fix invalid json which should not be insert
add simdjson lib check micro and fix fe fastjson param
Issue Number: close #xxx