-
Notifications
You must be signed in to change notification settings - Fork 3.5k
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
Add troubleshooting section for the date filter #16549
base: main
Are you sure you want to change the base?
Conversation
|
||
** Mitigations** | ||
|
||
* Change the locale in the date filter to a locale that still uses `Sep` as the abbreviated form for September, such as `en_US`. |
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.
Q: Can it be changed by using the ENV vars like https://www.baeldung.com/linux/locale-environment-variables ?
** Mitigations** | ||
|
||
* Change the locale in the date filter to a locale that still uses `Sep` as the abbreviated form for September, such as `en_US`. | ||
* Switch out the locale provider from CLDR to compat by setting `-Djava.locale.providers=COMPAT,SPI` in `jvm.options`. |
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 option needs to be protected with a "Only for JDK < 23"
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.
Logstash only supports 11, 17 and 21.
Thank you @robbavey for this! Can you confirm those QA below are valid? If they are, I would like to write some suggestions on top of what you've drafted.
The change can affect any Logstash user using JDK 17 or more recent. According to the support matrix, it's possible to use JDK 17 in 7.16.x onwards. So the "might be affected" users are those matching all the following conditions:
As usual, all pipelines should be validated & tested by the user. If you plan to use Logstash with JDK versions 17 or more recent, you have to apply one of the following:
|
This makes sense - do you think it makes sense to mention that we know about the changes in
It's actually JDK21 that has the issue - moving from JDK17 to JDK20 and above included a change to CLDR 42, which included the incompatible updates
This should be "versions 20 or more recent"
Or a locale that matches the data being sent into logstash
|
** Mitigations** | ||
|
||
* Change the locale in the date filter to a locale that still uses `Sep` as the abbreviated form for September, such as `en_US`. | ||
* Switch out the locale provider from CLDR to compat by setting `-Djava.locale.providers=COMPAT,SPI` in `jvm.options`. |
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.
Logstash only supports 11, 17 and 21.
Yes, we can say "we are aware that at least those are affected - other differences might also be present in other locales".
Ok - sorry for the misunderstanding - the problem is JDK >= 20. Anyway the support matrix only allows JDK 21 so we could mention JDK 20, but we also mention support matrix doesn't allow it. think the rest of the text I've written should be amended with 17 -> 20/21.
Yep, I can add it. I've written a KB to dump the date formats, with the ability to switch of JDK version and pass the locale settings and default JDK locale provider preference at https://support.elastic.dev/knowledge/view/5028e60c. I wonder if it might be useful. |
Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
Relates: #16530