Patent ID: 7809764
Filing Date: 2010-10-05
Classification: G06F

Abstract:
1. A computing device, the computing device including: a processing unit; a temporary copy software element comprising instructions executed by the processing unit, the temporary copy software element opening a temporary database transaction and creating a temporary copy of at least a first database object of a plurality of database objects contained in a database stored on a storage medium, said first database object having first dependency information, said temporary copy having other dependency information, said first dependency and other information being the same when said temporary database transaction is opened, said database also containing at least a second database object of the plurality of database objects, said second database object being dependent upon the first database object, and said database also containing a third database object of the plurality of database objects, said first database object being dependent upon said third database object; a transfer software element comprising instructions executed by the processing unit, the transfer software element initiating a transfer of the first database object using said temporary copy of the first database object, said transfer of said first database object occurring before a transfer of said second database object and after a transfer of said third database object; a transaction closure software element comprising instructions executed by the processing unit, the transaction closure software element terminating the temporary database transaction; and a topological sort software element comprising instructions executed by the processing unit, the topological sort software element performing a sort of the plurality of database objects to determine an order placement of the plurality of database objects, the topological sort software element ensuring that the transfer of said first database object occurs before the transfer of said second database object and after the transfer of said third database object, the topological sort software element performing the sort of the plurality of database objects using a depth first search algorithm of a digraph that includes both marking and stacking nodes that represent any of the database objects, creating temporary copies of a node that represents a database object and of an adjacent unmarked node, retrieving dependency information of the temporary copies, and rolling back creation of the temporary copies, the depth first search algorithm ensuring that the nodes are transferred only after all edges of a given node have been transferred and after the order placement of the plurality of database objects is determined wherein the dependency information for each temporary copy of each database object remains unchanged throughout a duration of the temporary database transaction.