-
Notifications
You must be signed in to change notification settings - Fork 24.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
Core: Remove parseDefaulting from DateFormatter #36386
Conversation
This commit removes the parseDefaulting method from DateFormatter, bringing it more inline with the joda equivalent FormatDateTimeFormatter. This method was only needed for the java time implementation of DateMathParser. Instead, a DateFormatter now returns an implementation of DateMathParser for the given format, allowing the java time implementation to construct the appropriate date math parser internally.
Pinging @elastic/es-core-infra |
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.
LGTM
return new MergedDateFormatter(formatters); | ||
} | ||
|
||
class MergedDateFormatter implements DateFormatter { | ||
|
||
private final String format; | ||
private final DateFormatter[] formatters; | ||
private final DateMathParser[] dateMathParsers; |
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.
Would you please write a brief doc that this is an optimization that means the formatters don't have to create dateMathParsers each time? It was non-obvious to me.
This commit removes the parseDefaulting method from DateFormatter, bringing it more inline with the joda equivalent FormatDateTimeFormatter. This method was only needed for the java time implementation of DateMathParser. Instead, a DateFormatter now returns an implementation of DateMathParser for the given format, allowing the java time implementation to construct the appropriate date math parser internally.
* elastic/6.x: (37 commits) [HLRC] Added support for Follow Stats API (elastic#36253) Exposed engine must have all ops below gcp during rollback (elastic#36159) TEST: Always enable soft-deletes in ShardChangesTests Use delCount of SegmentInfos to calculate numDocs (elastic#36323) Add soft-deletes upgrade tests (elastic#36286) Remove LocalCheckpointTracker#resetCheckpoint (elastic#34667) Option to use endpoints starting with _security (elastic#36379) [CCR] Restructured QA modules (elastic#36404) RestClient: on retry timeout add root exception (elastic#25576) [HLRC] Add support for put privileges API (elastic#35679) HLRC: Add rollup search (elastic#36334) Explicitly recommend to forceMerge before freezing (elastic#36376) Rename internal repository actions to be internal (elastic#36377) Core: Remove parseDefaulting from DateFormatter (elastic#36386) [ML] Prevent stack overflow while copying ML jobs and datafeeds (elastic#36370) Docs: Fix Jackson reference (elastic#36366) [ILM] Fix issue where index may not yet be in 'hot' phase (elastic#35716) Undeprecate /_watcher endpoints (elastic#36269) Docs: Fix typo in bool query (elastic#36350) HLRC: Add delete template API (elastic#36320) ...
This commit removes the parseDefaulting method from DateFormatter,
bringing it more inline with the joda equivalent
FormatDateTimeFormatter. This method was only needed for the java
time implementation of DateMathParser. Instead, a DateFormatter now
returns an implementation of DateMathParser for the given format,
allowing the java time implementation to construct the appropriate date
math parser internally.