You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tika.apache.org by "Hudson (Jira)" <ji...@apache.org> on 2019/11/19 06:29:00 UTC

[jira] [Commented] (TIKA-2892) ForkParser deadlock when InputStreamResource catches/returns IOException

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

Hudson commented on TIKA-2892:
------------------------------

SUCCESS: Integrated in Jenkins build tika-branch-1x #274 (See [https://builds.apache.org/job/tika-branch-1x/274/])
TIKA-2892: fix deadlock with ForkParser (nassif.lfcn: [https://github.com/apache/tika/commit/e11d428cf70468b436b9f9af8c14b138858dc6ca])
* (edit) tika-core/src/main/java/org/apache/tika/fork/InputStreamResource.java


> ForkParser deadlock when InputStreamResource catches/returns IOException
> ------------------------------------------------------------------------
>
>                 Key: TIKA-2892
>                 URL: https://issues.apache.org/jira/browse/TIKA-2892
>             Project: Tika
>          Issue Type: Bug
>          Components: parser
>    Affects Versions: 1.20, 1.19.1, 1.21
>            Reporter: Luís Filipe Nassif
>            Assignee: Luís Filipe Nassif
>            Priority: Major
>             Fix For: 2.0, 1.23
>
>
> It happens because ForkServer is waiting an int with the number of bytes read and, when InputStreamResource returns IOException, ForkClient does nothing with the IOException and tries to read input channel again.
> Simple fix is to do m = -1 instead of returning IOException in InputStreamResource. Better fix should propagate the IOException to ForkServer, no time to implement that now...



--
This message was sent by Atlassian Jira
(v8.3.4#803005)