[crac] RFR: Introduce per-Priority Context with different policies
Anton Kozlov
akozlov at openjdk.org
Wed May 24 13:08:29 UTC 2023
On Thu, 18 May 2023 12:36:22 GMT, Radim Vansa <duke at openjdk.org> wrote:
>> A follow-up work for #60:
>>
>> * Each priority now has a dedicated context, so contextes may provide different policies. CALL_SITE now uses new CriticalUnorderedContext that runs beforeCheckpoint on concurrent registration, fixes [1]. Whether or not CALL_SITE needs to be registered to at all is an open question and out of scope of this PR.
>> * the Global Context reverted from BlockingOrderedContext to OrderedContext, as that may have a huge impact on users. Probably we'll want to expose blocking/criticalUnorderd context along the global one, or at some point expose an implementation. But this is also out of scope of the PR.
>> * hierachy of the Context implementations are cleaned up a bit [2]
>>
>> The JDKContext is now just a holder of ClaimedFDs, I'll address this in a follow-up that depends on this Context follow-up.
>>
>> [1] https://github.com/openjdk/crac/pull/60#issuecomment-1545588281
>> [2] https://github.com/openjdk/crac/pull/60#discussion_r1185510445
>
> src/java.base/share/classes/jdk/internal/crac/JDKResource.java line 31:
>
>> 29: import jdk.crac.Resource;
>> 30:
>> 31: public interface JDKResource extends Resource {
>
> Could we drop the interface completely?
Probably, I propose to do this a bit later. E.g. it may be useful to override beforeCheckpoint here declaring no Exception is thrown.
-------------
PR Review Comment: https://git.openjdk.org/crac/pull/74#discussion_r1204099085
More information about the crac-dev
mailing list