-
Notifications
You must be signed in to change notification settings - Fork 97
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
Significant Performance Regression using Jruby Timeouts #152
Comments
@yaauie interesting. in #147 I did not see such a dramatic performance regression for single pattern use-case; also I did not test for multiple fall through which, as you point out, will multiply any performance regression. I wonder if using different LS versions also affect the performance tests? Did you use the same LS version for all tests with the different plugin versions? I wonder if it would make sense to have a single global timeout for the whole fall through list? (it could be configurable to keep BWC?) |
Meta issue created in elastic/logstash#11302 |
with #153 merged and available since >= 4.2.0 the fall-through case should be better when using options we have left (if more performance is needed) are the following :
|
Hey Percy, thanks for the data -> helpful to know |
@kares thanks for the follow up, appreciate your work on this. Our setup is holding steady with just the addition of |
+1 on timeout_millis => 0 |
@kares has there been any progress on this case? We still have a code base full of |
I've run a number of performance tests to get the raw throughput per-worker to determine how different variables affect the throughput of the grok, and determined that the changes to timeouts definitely have an outsized impact on grok filters that fall through many patterns to find their match (which makes sense, because the plugin initiates a timeout on each event for each pattern on until we find a match).
Caveat: In the above, NT indicates "No Timeout", or
timeout_millis => 0
, which we do NOT recommend for production since a single pathological input can essentially tie up CPU resources indefinitely)I will follow up with methodology for the above, and will see if I can get a better apples-to-apples comparison with 6.7.1 using the same version of this plugin as ships with 7.x.
The text was updated successfully, but these errors were encountered: