Hi,

In portable flink runner, SDK Harness docker containers are created
dynamically and are not garbage collected. SDK Harness container pull the
staging artifact, generate logs and tmp files which is stored as an
additional layer on top of image.
These dead container layers accumulates over time and make the machine go
OOM. To avoid this situation and keep the flexibility of letting containers
exist for debugging, I am planning to add cleanup flag to DockerPayload.
When set, this flag will tell runner to remove the container after killing.
Current DockerPayload:

// The payload of a Docker image
message DockerPayload {
  string container_image = 1;  // implicitly linux_amd64.
}


Proposed DockerPayload:

// The payload of a Docker image
message DockerPayload {
  string container_image = 1;  // implicitly linux_amd64.
  bool cleanup = 2; // Flag to signal container deletion after killing.
}


Let me know your thoughts and if there is a better way to do this.

Thanks,
Ankur

Reply via email to