You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@nutch.apache.org by "Jerome Charron (JIRA)" <ji...@apache.org> on 2006/01/10 14:29:20 UTC

[jira] Reopened: (NUTCH-151) CommandRunner can hang after the main thread exec is finished and has inefficient busy loop

     [ http://issues.apache.org/jira/browse/NUTCH-151?page=all ]
     
Jerome Charron reopened NUTCH-151:
----------------------------------


Due to the removal of calling barrier in PumperThread the process is always timedout (for instance , unit tests of parse-ext fails) because only the main thread is assumed to be finished.

> CommandRunner can hang after the main thread exec is finished and has inefficient busy loop
> -------------------------------------------------------------------------------------------
>
>          Key: NUTCH-151
>          URL: http://issues.apache.org/jira/browse/NUTCH-151
>      Project: Nutch
>         Type: Bug
>   Components: indexer
>     Versions: 0.8-dev
>  Environment: all
>     Reporter: Paul Baclace
>      Fix For: 0.8-dev
>  Attachments: CommandRunner.java, CommandRunner.java.patch
>
> I encountered a case where the JVM of a Tasktracker child did not exit after the main thread returned; a thread dump showed only the threads named STDOUT and STDERR from CommandRunner as non-daemon threads, and both were doing a read().
> CommandRunner usually works correctly when the subprocess is expected to be finished before the timeout or when no timeout is used. By _usually_, I mean in the absence of external thread interrupts.  The busy loop that waits for the process to finish has a sleep that is skipped over by an exception; this causes the waiting main thread to compete with the subprocess in a tight loop and effectively reduces the available cpu by 50%.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira