openj9
openj9 copied to clipboard
RCP: Introducing Frozen Classes
During snapshot creation, J9Class structures are marked as frozen when their classObject fields, specific from application class loader are nullified. During the restore phase, these structures are never used, kept hidden from the GC and other external users until a final solution is found. This is achieved by updating the skip logic in the J9HashTable and J9MemorySegment iterators, which prevents the GC from encountering J9Class structures in an unusable state that could lead to crashes.
Fixes: #21892 #22080
Co-authored-by: Babneet Singh [email protected] Co-authored-by: Tobi Ajila [email protected] Co-authored-by: Lige Zhou [email protected]