1. A method comprising: identifying one or more candidate objects in a dereferenced object graph, the one or more candidate objects being connected objects in the dereferenced object graph that are not marked as being live; extracting dead object data from the one or more candidate objects; storing the extracted dead object data; removing, after extracting the dead object data from the one or more candidate objects, the one or more candidate objects from memory; and repairing the dereferenced object graph.