Recent issue on Elasticsearch indicates a GC overload. Collecting GC logs would help diagnose this kind of issue if it ever happens again. Some care needs to be taken around log rotation (GC logging is overly optimized and creates a few issues for log rotation).
Description
Details
Status | Subtype | Assigned | Task | ||
---|---|---|---|---|---|
Resolved | debt | T134829 Followup on elastic1026 blowing up May 9, 21:43-22:14 UTC | |||
Resolved | Gehel | T134853 Enable GC (garbage collection) logs on Elasticsearch JVM |
Event Timeline
This follow-up task from an incident report has not been updated recently. If it is no longer valid, please add a comment explaining why. If it is still valid, please prioritize it appropriately relative to your other work. If you have any questions, feel free to ask me (Greg Grossmeier).
Hi @Gehel and @EBernhardson - can we take a look at this to see if it's still valid?
@greg, the answer to your concerns might have to wait until early next week when @Gehel returns from his offsite travels, but thanks for bringing it up!
Change 318055 had a related patch set uploaded (by Gehel):
elasticsearch - enable garbage collection logs on relforge servers
Change 318055 merged by Gehel:
elasticsearch - enable garbage collection logs on relforge servers
Mentioned in SAL (#wikimedia-operations) [2016-10-27T12:04:25Z] <gehel> restart elasticsearch on relforge to activate GC logs - T134853
Puppet change is deployed. GC logs are available on relforge. I will wait a few days to check everything works fine before activating them on production clusters as well.
Change 318353 had a related patch set uploaded (by Gehel):
elasticsearch - enable GC logs by default
I will assume that @Gehel's patch resolves this issue. Please reopen if there are any issues. :-)
The patch *should* resolve the issue, but it is not yet deployed. So at this point GC logs are enabled on relforge cluster, but not anywhere else. I'm reopening this and will close it for real fairly soon.
@Gehel Maybe we can share learnings about GC and which GC to use in particular over here where we are trying to optimize Gerrit in T148478 T148478#2750773 T148478#2760146 Are you using G1?
fwiw, here's where we enabled GC logging https://gerrit.wikimedia.org/r/#/c/317582/ https://gerrit.wikimedia.org/r/#/c/318067/