Patent ID: 8423733

Claim:
A method comprising: creating a first clone, wherein the first clone stores a copy of a storage object; assigning a first clone identifier to the first clone, wherein the first clone identifier is a first value of a variable; incrementing the variable in response to creating the first clone; creating a second clone, wherein the second clone shares the copy of the storage object; assigning a second clone identifier to the second clone, wherein the second clone identifier is a second value of the variable subsequent to the incrementing the variable; writing data to a first data block of the storage object; detecting whether the first clone has any child clones; and assigning a first epoch value to the first data block, wherein the first epoch value is equal to the first clone identifier of the first clone if the first clone has no child clones, and the first epoch value is equal to a clone identifier of first clone's most recently created child clone if the first clone has one or more child clones.