Patent ID: 8352448

Claim:
A computer program embodied on a non-transitory computer readable storage medium, comprising: computer readable program code configured for execution on a processor, wherein upon execution of the computer readable program code causes the processor to perform: program instruction for identifying and allocating a new storage location for a data object within a system managing the data object in an original location; program instruction for committing a preparation transaction for the data object within the system in order to return the system to an initial condition if necessary, the committing of the preparation transaction comprises putting the new storage location into a write state and it depends upon the desired objective of the execution transactions to be performed, data object insertion, deletion or moving and assigning a logically deleted state to the data object in the original location such that the data object is inaccessible to any users but the underlying data is untouched, wherein no portion of the data object is written to the new storage location by the preparation transaction; program instruction for committing an execution transaction with the data object only after committing the preparation transaction; and program instruction for securely deleting from the new storage location any portion of the data object necessary to return the system to the initial condition if committing the execution transaction fails and reallocating the new storage location and securely deleting any portion of the data object from the original location to change the system to a completed condition only if committing the execution transaction succeeds and the original storage location is made available for reallocation by the system; wherein the secure deletion process monitor the data that is being securely deleted and suspend the process at a point where all the data of concern has been securely deleted and the change of state is performed in the delete or move transaction, such that if the transaction commits, the object is logically deleted, if the transaction fails, the data will still be accessible; and wherein the system is managed with the preparation transaction and the execution transaction committed to a database comprising one or more records associated with the data object including one or more storage locations for the data object, the one or more records associated with the data object include a state for the data object, and securely deleting any portion of the data object comprises positively removing data from a specified physical location such that it is not recoverable by known means.