Skip to content

JVM heap size is not set correctly for Java actions #5

Open
@rabbah

Description

@rabbah

@rabbah commented on Thu Jun 15 2017

Java actions run with no heap settings, regardless of the container's memory limit: https://github.com/apache/incubator-openwhisk/blob/master/core/javaAction/Dockerfile#L38

This will cause a reused Java action to eventually be killed because the GC may not get a chance to run.

>  docker run -m 64M -it javaaction bash
# java -XX:+PrintFlagsFinal -version 2>&1 | grep MaxHeapSize
    uintx MaxHeapSize                              := 1035993088                          {product}

That's ~1GB even though memory limit for container is 64M.


@jsanda commented on Mon Oct 23 2017

Is something like this what you have in mind? run-java.sh is the default command for the image. Among other things it sets the JVM heap size based on container limits.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions