On 6/3/2015 1:41 AM, Clemens Wyss DEV wrote: >> The oom script just kills Solr with the KILL signal (-9) and logs the kill. > I know. But my feeling is, that not even this "happens", i.e. the script is > not being executed. At least I see no solr_oom_killer-$SOLR_PORT-$NOW.log > file ... > > Btw: > Who re-starts solr after it's been killed?
I'm not sure what to think here. I wonder if the Java you are using is broken? Restarting would most likely need to be handled by you. You could put Solr under the management of something that keeps it running, like heartbeat, pacemaker, or the supervisor program that comes with qmail, whose name I can never remember. You could add something to send you an email every time the OOM script is run, so you know it has been killed. If you have sized the memory appropriately, the OOM killer will never run. >> I don't know if a heap dump on OOM is compatible with the OOM script. >> If Java chooses to run the OOM script before the heap dump is done, the >> process >> will be killed before the heap finishes dumping. > What if I did a jmap-call in the oom-script before killing the process? You very likely could add that, but be aware of how much time anything you add will take. If your cloud is sufficiently redundant, then it probably won't matter if one node is down for several minutes. Thanks, Shawn