Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Don't omit Xms Java opt #10

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Commits on Dec 2, 2023

  1. Don't omit Xms Java opt

    As discussed with @drunkensway this build error occurs
    because -Xms (the minimum heap size) is expected to
    exist as the `$XMS_VALUE` environment variable in
    java_agent/memoryConfig.sh: line 90.
    
    This is mentioned in Java Memory Agent itself here:
    https://github.com/jelastic-jps/java-memory-agent#java-memory-agent-add-on-specific
    
    Interestingly we do set Xms in .jvmopts but these seemingly aren't used
    inside of docker compose for example. Hence the error I observed when trying
    to run the latest Hydra image version (31, although the version numbers are
    very confusing):
    
    ```
    2023-11-30 18:23:11 /java_agent/memoryConfig.sh: line 90: [[: 2
    2023-11-30 18:23:11 2: syntax error in expression (error token is "2")
    ```
    
    The code in question is:
    
    ```
      [[ $XMS_VALUE -ge $XMX_VALUE ]] && XMS=${XMX_VALUE}M
    ```
    
    Also here: https://github.com/jelastic-jps/java-memory-agent/blob/7fdd2996319d010ac0746b0351971fbe4c752e72/scripts/memoryConfig.sh#L91
    
    As you can see there's an expectation that the $XMS_VALUE is always set.
    
    After supplying this env var to the hydra docker image in my
    docker-compose.yml, everything worked fine:
    
    ```
    JAVA_OPTS: "-Xmx2G -Xms1G"
    ```
    olivierlacan committed Dec 2, 2023
    Configuration menu
    Copy the full SHA
    7f99622 View commit details
    Browse the repository at this point in the history