-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
Added New Fast DateTime parser implementation for RFC3339 Datetime format #11465
Added New Fast DateTime parser implementation for RFC3339 Datetime format #11465
Conversation
4c85946
to
6c6b497
Compare
❌ Gradle check result for 9be85bf: FAILURE Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change? |
Signed-off-by: Prabhat Sharma <[email protected]>
9be85bf
to
c325fb2
Compare
@reta can you please take a final look now? |
@CaptainDredge Just a question, |
Yes exactly @reta. I can take it up in a follow up PR. I've one follow up PR for supporting local datetime fully which most logging libraries use after this and then will see if I can add support for rfc3339 strict as well |
The backport to
To backport manually, run these commands in your terminal: # Navigate to the root of your repository
cd $(git rev-parse --show-toplevel)
# Fetch latest updates from GitHub
git fetch
# Create a new working tree
git worktree add ../.worktrees/OpenSearch/backport-2.x 2.x
# Navigate to the new working tree
pushd ../.worktrees/OpenSearch/backport-2.x
# Create a new branch
git switch --create backport/backport-11465-to-2.x
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 829215c4a4660ee65026c40a0a01ebe100b3ee2c
# Push it to GitHub
git push --set-upstream origin backport/backport-11465-to-2.x
# Go back to the original working tree
popd
# Delete the working tree
git worktree remove ../.worktrees/OpenSearch/backport-2.x Then, create a pull request where the |
@CaptainDredge could you please backport manually to |
Thanks for merging! I'll raise backport to |
There is a unit test failure in sql with the introduction of a new Format Name. We have backported our fix to 2.x but core 2.x still doesn't have the new FormatName. @CaptainDredge can we expedite backport to 2.x as 2.12 is nearing the code freeze date. |
Signed-off-by: Prabhat Sharma <[email protected]> Co-authored-by: Prabhat Sharma <[email protected]> (cherry picked from commit 829215c)
Signed-off-by: Prabhat Sharma <[email protected]> Co-authored-by: Prabhat Sharma <[email protected]> (cherry picked from commit 829215c)
Signed-off-by: Prabhat Sharma <[email protected]> Co-authored-by: Prabhat Sharma <[email protected]> (cherry picked from commit 829215c)
Signed-off-by: Prabhat Sharma <[email protected]> Co-authored-by: Prabhat Sharma <[email protected]> (cherry picked from commit 829215c)
@vamsi-amazon I've raised the backport #12107. Thanks! |
Signed-off-by: Prabhat Sharma <[email protected]> Co-authored-by: Prabhat Sharma <[email protected]> (cherry picked from commit 829215c)
Signed-off-by: Prabhat Sharma <[email protected]> Co-authored-by: Prabhat Sharma <[email protected]>
Signed-off-by: Prabhat Sharma <[email protected]> Co-authored-by: Prabhat Sharma <[email protected]>
Signed-off-by: Prabhat Sharma <[email protected]> Co-authored-by: Prabhat Sharma <[email protected]> Signed-off-by: Shivansh Arora <[email protected]>
Description
This PR adds new
rfc3339
format for datetime parsing whose implementation is not based on the usual java datetime formatters but is hand written to make it extremely fast. RFC3339 format is one of the most used format for datetime across internet. The parser implements a lenient version of rfc3339 which aligns more with W3C Note.This implementation is 42x faster than
strict_date_optional_time_format
to parse rfc3339 compatible datetime strings.Microbenchmark results
Related Issues
Resolves #8361
Check List
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.