-
Notifications
You must be signed in to change notification settings - Fork 24.8k
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
Investigate moving from Joda to java.time #12829
Comments
Strong +1 |
Another alternative might be to use date4j instead of Joda Time. It's supposedly faster than Joda and should also fix the timestamp-precision issues (Joda only maintains millisecond-level precision and truncates any timestamps more precise than that). |
Note that date4j uses a BSD license. |
In general I think the less dependencies we have the better ie. I think cutting over to java.time would be ideal from a maintenance perspective |
In addition, as java.time (which is a fork of joda anyways) is part of the JDK, it should get more attention by Hotspot deveopers. We may get performance improvements... BTW: forbidden-apis 2.0 has new signatures around java.time, but they are also part of Lucene's signature files. If you want to switch, I would recommend to use those (or update to 2.0, which comes earlier). |
Slightly related -- Logstash will also be moving its date filter to use java.time. We will share any lessons learned if we get to this first. |
cc @elastic/es-search-aggs |
Closing in favour of #27330. |
Today we use a forked version of Joda for performance reasons. This can lead to problems with class loading (eg #10290, #3557, #4660), and requires us to have hacks to ensure that our version of Joda is loaded first.
We should investigate the possibility of replacing Joda with java.time. One roadblock would be the need to reimplement the dateOptionalTimeParser, which doesn't have an equivalent java.time. See http://sourceforge.net/p/joda/mailman/message/34327973/ for more
The text was updated successfully, but these errors were encountered: