CFV: New Project: CRaC

Anton Kozlov akozlov at
Fri Aug 6 08:42:11 UTC 2021

On 8/6/21 12:39 AM, Philip Race wrote:
> I'm very curious to know if the project intends to even investigate this for desktop applications.
> The proposal  and prior discussion seem to be completely silent on this.
> Restoring the state of a running desktop application opens new complications.

Desktop apps are unlikely to be supported soon. The primary use-case of the
prototype implementation is microservices and networking applications instances
that are scaled a lot. I played a bit with a saving simple graphical java app
on X11 on top of the CRaC prototype. For now, I don't plan to invest more time
in this topic, but I will be happy if someone will continue the investigation.

Few observations from the saving GUI app. The checkpoint is aborted as it
should because of connections with the external world. So the principle that
the image should be safe once created is satisfied. After some time changing
the code, it became clear that the amount of changes is going to be rather big
because of X11 protocol turned out to be very stateful and I needed to
reinitialize a lot of things.

I did not investigate more clever approaches like loading X11-related parts in
a separate class loader and unload/load them again. This probably could reduce
the amount of the required changes.


More information about the discuss mailing list