FME Flow Core Crashes with Java Heap Space Out of Memory Error

Liz Sanderson
Liz Sanderson
  • Updated

Consideration

In the FME Flow Web UI, toast messages appear stating:

Error Communicating with FME Flow host

In fmeprocessmonitorcore.log (found in Resources > Core > Current), recurring messages reference Java heap space:

INFORM   Thread-148   Core   Exception in thread "RequestHandler-Thread" java.lang.OutOfMemoryError: Java heap space
...
INFORM   Core   393656 : Process "Core" being restarted.

Why This Happens

By default, the FME Flow Core and other protocols have a maximum heap memory allocation. If a job request exceeds this limit, the protocol crashes.

The most common cause is submitting a job where one or more published parameters contain very large values — for example, passing a complete JSON or XML string as a parameter value. To identify the offending request, review fmeserver.log (located in Resources > Core > Current), which records every request.

How to Resolve It

The preferred resolution is to modify your workspace to reduce the request input size. For example, instead of passing file content as a parameter, pass only the file path and use a reader (such as the JSON Reader or XML Reader) within the workspace to read the content from that path.

If modifying the workflow is not immediately possible, you can increase the memory allocated to the Core protocol. Note that if request sizes continue to grow, this issue may recur, which is why the workflow change is the recommended long-term fix.

To increase heap memory:

1. Open processMonitorConfigCore.txt (located in <FMEFlowInstallDir>\Server\) in a text editor running as administrator.

2. Find the section for the crashing protocol, for example:

   # Start FME Flow Core

3. Update -Xms32m -Xmx1024m to -Xms32m -Xmx2048m and save the file. This sets the maximum heap size to 2 GB; FME will only consume this memory if needed.

4. Restart FME Flow to apply the change.

If a heap space error occurs with a different protocol, the same steps apply; locate that protocol's section in the config file and double the -Xmx value as a starting point.

Was this article helpful?

We're sorry to hear that.

Please tell us why.

As of January 14th, 2026, comments on knowledge base articles have been closed. To make sure questions don’t get missed and to enable more community support, we’ve moved discussions to the FME Community. If you have a question or a comment about this article, please create a new post or create a support ticket.