[crac] RFR: Correct System.nanotime() value after restore

Radim Vansa duke at openjdk.org
Thu Mar 23 15:48:18 UTC 2023


There are various places both inside JDK and in libraries that rely on monotonicity of `System.nanotime()`. When the process is restored on a different machine the value will likely differ as the implementation provides time since machine boot. This PR records wall clock time before checkpoint and after restore and tries to adjust the value provided by nanotime() to reasonably correct value.

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

Commit messages:
 - Merge remote-tracking branch 'origin/crac' into nanotime
 - Adjust System.nanoTime() to keep consistent time origin after restore
 - Merge remote-tracking branch 'origin/crac' into test-crac-java
 - Remove test name from the @run JTreg tag
 - Use default main and args from CracTest
 - Merge remote-tracking branch 'origin/crac' into test-crac-java
 - Add docker to CracBuilder
 - Rename enum for `simengine` to SIMULATE
 - Convert CRaC tests from shell scripts to Java
 - Remove somebody's forgotten overrides
 - ... and 1 more: https://git.openjdk.org/crac/compare/2c83b9c3...b7f54604

Changes: https://git.openjdk.org/crac/pull/53/files
 Webrev: https://webrevs.openjdk.org/?repo=crac&pr=53&range=00
  Stats: 152 lines in 7 files changed: 150 ins; 0 del; 2 mod
  Patch: https://git.openjdk.org/crac/pull/53.diff
  Fetch: git fetch https://git.openjdk.org/crac.git pull/53/head:pull/53

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


More information about the crac-dev mailing list