Uploaded image for project: 'Tika'
  1. Tika
  2. TIKA-591

Separate launcer process for forking JVMs

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: parser
    • Labels:
      None

      Description

      As a followup to TIKA-416, it would be good to implement at least optional support for a separate launcher process for the ForkParser feature. The need for such an extra process came up in JCR-2864 where a reference to http://developers.sun.com/solaris/articles/subprocess/subprocess.html was made.

      To summarize, the problem is that the ProcessBuilder.start() call can result in a temporary duplication of the memory space of the parent JVM. Even with copy-on-write semantics this can be a fairly expensive operation and prone to out-of-memory issues especially in large-scale deployments where the parent JVM already uses the majority of the available RAM on a computer.

      A similar problem is also being discussed at HADOOP-5059.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              jukkaz Jukka Zitting
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated: