Skip to content

Support Coordinated Restore at Checkpoint#8367

Merged
headius merged 12 commits intomasterfrom
crac
Oct 9, 2024
Merged

Support Coordinated Restore at Checkpoint#8367
headius merged 12 commits intomasterfrom
crac

Conversation

@headius
Copy link
Member

@headius headius commented Oct 9, 2024

This adds basic support for Coordinated Restore at Checkpoint (Project CRaC) as implemented by the Azul team.

  • New shaded dependency org.crac:crac, a small API shim that is a no-op on non-CRaC JDKs.
  • New CheckpointMain that captures a booted JRuby instance and provides mechanisms for pre-boot and post-boot warmup.
  • Modifications to the hierarchy of "main" classes to share preboot logic with the DripMain loader.

headius added 12 commits August 21, 2024 15:29
This allows specifying a file or line on the command line after
--checkpoint that will be run in the prebooted JRuby runtime.
Not setting main before endPreboot might result in it never being
set if endPreboot puts the system in a state where new code may
run for prebooted commands.
This should be configurable in the future, but for now it just
evaluates "1 + 1" to make sure the key parts of JRuby are loaded
and running.
@headius headius added this to the JRuby 9.4.9.0 milestone Oct 9, 2024
@headius headius merged commit 3c5d4d1 into master Oct 9, 2024
@headius headius deleted the crac branch October 9, 2024 15:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant