1. A method comprising: creating an allocation table, wherein the allocation table comprises a first entry associated with a first memory block, and the first entry comprises a first flag indicating whether data in the first memory block is current; mapping a data object to the first memory block; updating the allocation table to reflect the mapping the data object to the first memory block, wherein the updating comprises updating the first entry to indicate the first memory block is current; creating a first copy of data contents of the first memory block; modifying the first copy to create a first modified data; allocating a second memory block in response to the modifying the first copy; storing the first modified data in the second memory block; remapping the data object to the second memory block; and wherein the first memory block is distinct from the second memory block.