Patent ID: 8015158

Claim:
A system for restoring a database system, the system comprising: a server system executing a backup management engine and a host database application that implements the database system, the database system comprising a set of one or more transaction data containers stored on a storage system, each transaction data container having an original pointer that references the transaction data container and a corresponding archive pointer that also references the same transaction data container, the original pointer being stored in an original directory and the archive pointer being stored in an archive directory on the storage system, the backup management engine configured for: determining whether a first original pointer is altered, wherein the first original pointer initially referenced a first transaction data container, wherein determining whether the first original pointer is altered comprises: retrieving a primary transaction data container that the first original pointer currently references and a primary pointer counter associated with the primary transaction data container; determining, in the archive directory, a first corresponding archive pointer that corresponds to the first original pointer; retrieving a secondary transaction data container that the first corresponding archive pointer currently references and a secondary pointer counter associated with the secondary transaction data container; and using the primary and secondary pointer counters and the primary and secondary transaction data containers to determine whether the first original pointer is altered by being deleted from the original directory or by no longer referencing the first transaction data container; and upon determining that the first original pointer is altered, restoring the first original pointer in the original directory by replacing, in the original directory, the first original pointer with the first corresponding archive pointer in the archive directory that references the same first transaction data container.