The default setting `-XX:+CRaCResetStartTime` causes trouble in caching cgroup data: `CachedMetric` checks if it should reload current metrics by comparing `os::elapsed_counter()` to `_next_check_counter` (recorded before checkpoint). As `CRaCResetStartTime` causes `os::elapsed_counter()` to run from 0 on restore it breaks this logic, effectively prohibiting any update of those.
There might be more places that cache `os::elapsed_counter()` and `os::elapsedTime()` (over 100 usages across codebase) and expect this method to return monotonic values.
There might be more places that cache `os::elapsed_counter()` and `os::elapsedTime()` (over 100 usages across codebase) and expect this method to return monotonic values.
- links to
-
Commit(crac) openjdk/crac/9635366a
-
Review(crac) openjdk/crac/182