Merged
Conversation
Collaborator
|
Pinging @elastic/es-data-management (Team:Data Management) |
Collaborator
|
Hi @joegallo, I've created a changelog YAML for you. |
Member
|
It would be useful to attach some kind of performance comparison though. |
Contributor
Author
Here's an amalgamation of three runs -- the first row is stock Elasticsearch, the second row is slightly slower and that's with the joni upgrade (this might be within the bounds of our confidence interval on these things, 🤷), the third row is with the joni upgrade and I took a quick WIP swing at pulling out the the |
Contributor
Author
mamazzol
pushed a commit
to mamazzol/elasticsearch
that referenced
this pull request
Dec 5, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

We haven't touched this in quite some time (it's been since #47374). But there's actually a new feature in joni that we should be taking advantage of: jruby/joni#78 (this PR doesn't do that, though, it's just a version bump).
Interestingly, that previous Elasticsearch PR was also a version bump in order to get access to better timeout logic.
From previous profiling and benchmarking, I know that the grok processor is one of the more time-consuming processors out there, and that while executing the regex is timeconsuming, registering and unregistering the watchdog is surprisingly heavy compared to how long one might imagine it could take (I'm betting due to synchronization overhead), so moving to the native solution without a separate watchdog mechanism would likely buy us a nice little bit of free performance here.
jruby/joni#75 also looks interesting, but I don't know off the top of my head if that's quite as a relevant to our use of joni in Elasticsearch.