[ https://issues.apache.org/jira/browse/TIKA-2725?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16611392#comment-16611392 ]
Hudson commented on TIKA-2725: ------------------------------ SUCCESS: Integrated in Jenkins build tika-branch-1x #85 (See [https://builds.apache.org/job/tika-branch-1x/85/]) TIKA-2725 -- first working draft...include commit with conflicts (tallison: [https://github.com/apache/tika/commit/3af35f17836c1c39f420e4cbe79b24fe7bca3ede]) * (edit) tika-server/src/main/java/org/apache/tika/server/resource/TikaResource.java > Make tika-server robust against ooms/infinite loops/memory leaks > ---------------------------------------------------------------- > > Key: TIKA-2725 > URL: https://issues.apache.org/jira/browse/TIKA-2725 > Project: Tika > Issue Type: Task > Reporter: Tim Allison > Assignee: Tim Allison > Priority: Major > Fix For: 1.19, 2.0.0 > > > Currently, tika-server is vulnerable to ooms, inifinite loops and memory > leaks. I see two ways of making it robust: > 1) use the ForkParser > 2) have tika-server spawn a child process that actually runs the server, put > a watcher thread in the child that will kill the child on oom/timeout/after x > files. The parent process can then restart the child if it dies. > I somewhat prefer 2) so that we don't have to doubly pass the inputstream. I > propose 2), and I propose making it optional in Tika 1.x, but then the > default in Tika 2.x. We could also add a status ping from parent to child in > case the child gets caught up in stop the world gc (h/t [~bleskes]). > Other options/recommendations? -- This message was sent by Atlassian JIRA (v7.6.3#76005)