[crac] RFR: PID adjustment on checkpoint [v8]

Roman Marchenko rmarchenko at openjdk.org
Tue Jun 27 11:45:56 UTC 2023


> On restore, there might be PID value conflicts because of small PID values, if it was checkpoint'ed in a container. Therefore, when checkpointing in a container, we need to move PID value for new processes to a particular value to avoid conflicts on restore.
> 
> See https://github.com/CRaC/example-lambda/blob/master/checkpoint.cmd.sh#L8 for example.
> 
> This PR contains implemented functionality similar to the example above, making this work out of the box. By default, if checkpointing, PID is not adjusted. To adjust PID for a checkpoint'ed process, `-XX:CRaCMinPid=<value>` option should be used along with `CRaCCheckpointTo`. Min `CRaCMinPid` value is 1, max `CRaCMinPid` value is `UINT_MAX`, but it is actually limited by OS's pid_max.

Roman Marchenko has updated the pull request incrementally with two additional commits since the last revision:

 - Fixing review comments
 - Revert "Now CracMinPid option must be set explicitly to adjust PID"
   
   This reverts commit b3d66800d6ea441fb86498fdbb229400747eb44f.

-------------

Changes:
  - all: https://git.openjdk.org/crac/pull/86/files
  - new: https://git.openjdk.org/crac/pull/86/files/b3d66800..cc527e7e

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=crac&pr=86&range=07
 - incr: https://webrevs.openjdk.org/?repo=crac&pr=86&range=06-07

  Stats: 39 lines in 3 files changed: 13 ins; 1 del; 25 mod
  Patch: https://git.openjdk.org/crac/pull/86.diff
  Fetch: git fetch https://git.openjdk.org/crac.git pull/86/head:pull/86

PR: https://git.openjdk.org/crac/pull/86


More information about the crac-dev mailing list