[ 
https://issues.apache.org/jira/browse/SOLR-8145?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15169579#comment-15169579
 ] 

Scott Blum commented on SOLR-8145:
----------------------------------

I've always just given this special handling in my own installation.  My 
bin/solr script is edited to use a specific env var:

{code}
diff --git a/solr/bin/solr b/solr/bin/solr
index 85cd550..0e383b5 100755
--- a/solr/bin/solr
+++ b/solr/bin/solr
@@ -1315,7 +1315,8 @@ function launch_solr() {
 
   if [ "$run_in_foreground" == "true" ]; then
     echo -e "\nStarting Solr$IN_CLOUD_MODE on port $SOLR_PORT from 
$SOLR_SERVER_DIR\n"
-    exec "$JAVA" "${SOLR_START_OPTS[@]}" $SOLR_ADDL_ARGS -jar start.jar 
"${SOLR_JETTY_CONFIG[@]}"
+    # scottb: OOMKILLER needs super special handling
+    exec "$JAVA" "${SOLR_START_OPTS[@]}" "${OOMKILLER:=-Dno.oom.killer}" 
$SOLR_ADDL_ARGS -jar start.jar "${SOLR_JETTY_CONFIG[@]}"
   else
     # run Solr in the background
     nohup "$JAVA" "${SOLR_START_OPTS[@]}" $SOLR_ADDL_ARGS -jar start.jar \
{code}

Then I just setup OOMKILLER in the calling script to be something like

{code}
'-XX:OnOutOfMemoryError=exec ' + os.path.abspath('killjava.sh')
{code}

At that point, you can get by with a super simple killjava.sh:

{code}
#!/bin/bash
kill -9 $PPID
{code}

The current scheme seems super complicated.


> bin/solr script oom_killer arg incorrect
> ----------------------------------------
>
>                 Key: SOLR-8145
>                 URL: https://issues.apache.org/jira/browse/SOLR-8145
>             Project: Solr
>          Issue Type: Bug
>          Components: scripts and tools
>    Affects Versions: 5.2.1
>            Reporter: Nate Dire
>            Priority: Minor
>         Attachments: SOLR-8145.patch, SOLR-8145.patch, SOLR-8145.patch
>
>
> I noticed the oom_killer script wasn't working in our 5.2 deployment.
> In the {{bin/solr}} script, the {{OnOutOfMemoryError}} option is being passed 
> as an arg to the jar rather than to the JVM.  I moved it ahead of {{-jar}} 
> and verified it shows up in the JVM args in the UI.
> {noformat}
>    # run Solr in the background
>     nohup "$JAVA" "${SOLR_START_OPTS[@]}" $SOLR_ADDL_ARGS -jar start.jar \
>     "-XX:OnOutOfMemoryError=$SOLR_TIP/bin/oom_solr.sh $SOLR_PORT 
> $SOLR_LOGS_DIR" "${SOLR_JETTY_CONFIG[@]}" \
> {noformat}
> Also, I'm not sure what the {{SOLR_PORT}} and {{SOLR_LOGS_DIR}} args are 
> doing--they don't appear to be positional arguments to the jar.
> Attaching a patch against 5.2.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to