docs: document consensus node environment variables (application.env vs extraEnv) - #281
Open
Fantomasa wants to merge 1 commit into
Open
docs: document consensus node environment variables (application.env vs extraEnv)#281Fantomasa wants to merge 1 commit into
Fantomasa wants to merge 1 commit into
Conversation
…vs extraEnv) Chart extraEnv entries only set variables on the node container; the consensus node JVM is launched by the in-container service manager with a controlled environment, so only service-declared variables such as JAVA_OPTS take effect and anything else (e.g. MALLOC_ARENA_MAX) is silently dropped. Document application.env (--application-env) as the supported mechanism for JVM-visible environment variables, with a verification command and the Falcon values-file form. Fixes hiero-ledger/solo#3074 Signed-off-by: Fantomasa <ivailoinfo@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Adds a new page under Advanced Solo Setup → Network Deployments documenting how to pass environment variables to the consensus node JVM, resolving the confusion reported in hiero-ledger/solo#3074:
application.env(--application-env) is documented as the supported mechanism — the node start script loads it at JVM launch, so any variable (e.g.MALLOC_ARENA_MAX) is visible to the Java process. Solo also mirrors its entries into the pod'sextraEnv, keeping container and JVM environments consistent.extraEnvis documented as limited: it sets container-level variables, but the in-container service manager starts the JVM with a controlled environment, so only service-declared variables (JAVA_OPTS,JAVA_HEAP_MIN,JAVA_HEAP_MAX) take effect — exactly why the issue reporter sawMALLOC_ARENA_MAXmissing from/proc/<pid>/environ.kubectl execverification command and the Falcon values-file form (network: --application-env), matching the structure of the sibling Custom Application Properties page.Grounded in the solo source:
--application-envis anodeConfigFileFlagsentry staged as theapplication.envConfigMap (profile-manager.ts), Solo mirrors it intodefaults.root.extraEnv(applyApplicationEnvToExtraEnv), and Solo's ownsmall-memoryprofile passesMALLOC_ARENA_MAX=1throughapplication.env— confirming this is the working path.This is the resolution direction requested by the maintainer comments on the issue ("document that extraEnv is limited to variables that are in the systemd service list; document application.env as not limited and the preferred method").
Related Issues