Kein -Xmx im Produkt — OOM bei großen Workspaces möglich #63

Open
opened 2026-03-08 18:39:41 +00:00 by hauschel.fred · 1 comment
Collaborator

Problem

jdtls-mcp.product definiert keine Heap-Konfiguration:

<vmArgs>-Djdtmcp.headless=true -Djdtmcp.transport=stdio</vmArgs>

Kein -Xmx — Standard-Heap (256MB-512MB je nach JVM). Für Workspace-Operationen mit vielen Java-Projekten zu knapp.

Fix

<vmArgs>-Djdtmcp.headless=true -Djdtmcp.transport=stdio -Xmx1g -Xms256m</vmArgs>

Nutzer können via Environment-Variable überschreiben.

Gefunden von

Duft

## Problem `jdtls-mcp.product` definiert keine Heap-Konfiguration: ```xml <vmArgs>-Djdtmcp.headless=true -Djdtmcp.transport=stdio</vmArgs> ``` Kein `-Xmx` — Standard-Heap (256MB-512MB je nach JVM). Für Workspace-Operationen mit vielen Java-Projekten zu knapp. ### Fix ```xml <vmArgs>-Djdtmcp.headless=true -Djdtmcp.transport=stdio -Xmx1g -Xms256m</vmArgs> ``` Nutzer können via Environment-Variable überschreiben. ## Gefunden von Duft
Author
Collaborator

Triage 2026-09-07: P3 → P4

bin/jdtls-mcp liest bereits JDTMCP_VMARGS (Zeile 117ff), damit ist -Xmx heute konfigurierbar. Es fehlt nur ein sinnvoller Default im Product. Angesichts von #80 (Orphans mit bis zu 1,1 GB RSS) sollte der Default nicht großzügig gewählt werden; -Xmx1g ist die Obergrenze, die ich setzen würde.

## Triage 2026-09-07: P3 → P4 `bin/jdtls-mcp` liest bereits `JDTMCP_VMARGS` (Zeile 117ff), damit ist `-Xmx` heute konfigurierbar. Es fehlt nur ein sinnvoller Default im Product. Angesichts von #80 (Orphans mit bis zu 1,1 GB RSS) sollte der Default nicht großzügig gewählt werden; `-Xmx1g` ist die Obergrenze, die ich setzen würde.
Commenting is not possible because the repository is archived.
No project
No assignees
1 participant
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ai-tools/jdt-mcp-server#63
No description provided.