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 2018/11/19 20:38:01 UTC
[jira] [Commented] (TIKA-2785) Switch parent/child IPC to mmap file
from stdout/stderr in tika-server
[ https://issues.apache.org/jira/browse/TIKA-2785?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16692230#comment-16692230 ]
Hudson commented on TIKA-2785:
------------------------------
UNSTABLE: Integrated in Jenkins build tika-2.x-windows #351 (See [https://builds.apache.org/job/tika-2.x-windows/351/])
TIKA-2785 -- switch communication from child to parent to a shared (tallison: rev a88b8ab64c75869c08701aad9607fc56020c2e1b)
* (edit) tika-server/src/main/java/org/apache/tika/server/TikaServerWatchDog.java
* (edit) tika-server/src/main/java/org/apache/tika/server/ServerTimeouts.java
* (edit) tika-server/src/test/resources/logging/log4j_child.xml
* (edit) tika-server/src/main/java/org/apache/tika/server/ServerStatus.java
* (edit) tika-server/src/main/java/org/apache/tika/server/ServerStatusWatcher.java
* (edit) CHANGES.txt
* (add) tika-server/src/test/resources/mock/heavy_hang_100.xml
* (add) tika-core/src/main/java/org/apache/tika/io/MappedBufferCleaner.java
* (edit) tika-server/src/main/java/org/apache/tika/server/TikaServerCli.java
* (edit) tika-server/src/test/java/org/apache/tika/server/TikaServerIntegrationTest.java
* (delete) tika-server/src/test/resources/mock/heavy_hand_100.xml
> Switch parent/child IPC to mmap file from stdout/stderr in tika-server
> ----------------------------------------------------------------------
>
> Key: TIKA-2785
> URL: https://issues.apache.org/jira/browse/TIKA-2785
> Project: Tika
> Issue Type: Task
> Reporter: Tim Allison
> Assignee: Tim Allison
> Priority: Major
> Fix For: 2.0.0, 1.20
>
>
> When I added {{-spawnChild}} to tika-server, I followed the pattern in ForkParser of redirecting stdout/stderr for the parent to listen to output from the child process. This relies on the parsers not grabbing a pointer to stdout/stderr _before_ we redirect it. However, it is possible for parsers to grab stdout/stderr during static initialization, as happens with log4j configured to write to stdout/stderr.
> This means that the communication channel from child to parent is unreliable. Let's switch child to parent communication in {{-spawnChild}} to a shared mmap'd file.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)