markrmiller opened a new pull request, #4514:
URL: https://github.com/apache/solr/pull/4514

   Load-average and memory circuit breakers were doing more harm than good 
under high concurrency.
   
   LoadAverageCircuitBreaker called 
OperatingSystemMXBean.getSystemLoadAverage() on every request. The OS load 
average is a one-minute moving average, so re-polling it per-request is wasted 
work - and when many requests arrived concurrently, the syscall stampede 
hammered the CPU, which is the condition this breaker exists to prevent rather 
than cause.
   
   MemoryCircuitBreaker sampled MemoryMXBean.getHeapMemoryUsage().getUsed() on 
a 30-second moving average. With a generational collector that signal climbs 
toward max between collections during normal operation; the breaker would trip 
on transient pre-GC peaks that GC was about to reclaim.
   
   https://issues.apache.org/jira/browse/SOLR-18284


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to