[crac] RFR: 8375044: [CRaC] Structured engine options info [v4]

Timofei Pushkin tpushkin at openjdk.org
Thu Jan 22 07:07:00 UTC 2026


On Tue, 20 Jan 2026 15:49:27 GMT, Radim Vansa <rvansa at openjdk.org> wrote:

>> src/hotspot/share/runtime/crac_engine.cpp line 424:
>> 
>>> 422: 
>>> 423: const crlib_conf_option_t *CracEngine::configuration_options() const {
>>> 424:   static crlib_conf_option_t *all_options = nullptr;
>> 
>> I doubt that the documentation code will be performance-critical so I'd prefer to remove this caching to leave the possibility of using `CracEngine` for different engines within a process. I don't have a practical use case yet, just seems cleaner.
>
> This is not only about caching, but also about managing the lifecycle, any symmetry with `configuration_doc` (which is not released by the caller).  But I can keep the cache in `CRaCEngine`.

`CRaCEngine`'s methods do not have to follow exactly the same semantics as the corresponding crlib methods so I expected it would be the caller's responsibility to free. But the current approach is also OK.

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

PR Review Comment: https://git.openjdk.org/crac/pull/286#discussion_r2715584719


More information about the crac-dev mailing list