Method for performing data migration
AssigneeOracle International Corporation
InventorsHarlan Sexton, Peter Benson
Life of this patent
Estimating the term…
Abstract
A method and software for performing data migration is described in which a common data migration driver routine is provided to handle various and disparate kinds of migration operations in a conceptually unified manner. Differences between the migration operations are handled by variations in how the state of the data migration driver routine is initialized, including pointers to low-level routines. Furthermore, a table of actions can be used to direct the basic operation of object copying, external reference created, and object interning.
Claims15
A method for performing data migration, comprising:
- receiving a list of objects to perform the data migration;
- selecting an object from the list of objects;
- scanning the selected object to identify a reference to another object;
- and
- for the identified reference, looking up an action in a table indexed by a memory space of the selected object and a memory space of the other object and, if the action indicates a copy operation, copying the other object to the memory space of the selected object.
A method for performing data migration, comprising:
- providing a driver routine comprising an arrangement of instructions
- configured to operate on a list of objects by:
- selecting an object from the list of objects;
- scanning the selected object to identify a reference to another object;
- and
- for the identified reference, looking up an action in a table indexed by a memory space of the selected object and a memory space of the other object and, if the action indicates a copy operation, copying the other object to the memory space of the selected object;
- performing a migration of objects from a call-duration memory to a session-duration memory by invoking the driver routine using entries in an exit table as the list of objects;
- and
- performing a garbage collection of objects in the session-duration memory by invoking the driver routine using roots of the session-duration memory as the list of objects.
A method for performing data migration, comprising:
- providing a driver routine comprising an arrangement of instructions configured to operate on a list of objects and a reference to a copy routine by performing the steps of:
- selecting an object from the list of objects;
- scanning the selected object to identify a reference to another object;
- and
- for the identified reference, looking up an action in a table indexed by a memory space of the selected object and a memory space of the other object and, if the action indicates a copy operation, executing the copy routine;
- performing a migration of objects from a call-duration memory to a session-duration memory by invoking the driver routine using entries in an exit table as the list of objects and a first copy routine as the copy routine, wherein the first copy routine comprises an arrangement of instructions configured for checking a table of forwarding references, copying the other object to the memory space of the selected object, and updating the table of forwarding references if a memory space of the other object does not permit a forwarding pointer to be stored in the memory space of the other object;
- and
- performing a garbage collection of objects in the session-duration memory by invoking the driver routine using roots of the session-duration memory as the list of objects and a second copy routine as the copy routine, wherein the second copy routine comprises an arrangement of instructions configured for copying the other object to the memory space of the selected object and storing a forwarding pointer in the memory space of the other object.
Dependencies are inferred from the claim text.