ORACLE REWIND: METADATA-DRIVEN UNDO
First Claim
Patent Images
1. A system, comprising:
- one or more processors;
a computer-readable non-transitory storage media;
a metadata repository that stores metadata associated with a plurality of operations, wherein each operation is associated with an operation type, wherein the metadata associated with each operation identifies at least;
a) one or more attributes associated with that operation, and b) an undolet associated with the operation type of the corresponding operation, wherein the undolet includes instructions for generating undo entries;
undo logic configured to c) generate one or more entries in an undo log based at least in part on the metadata in the metadata repository and the undolet, wherein a first entry in the undo log is based on a first operation in a first request that is intercepted by the system and that is a request to change the value of a first object on a target system from a second value to a third value, and includes a first attribute value for a first attribute associated with the operation, and d) in response to intercepting the first request, generate a second request to the target system to retrieve the second value from the target system before the second value is changed in response to the first request.
1 Assignment
0 Petitions
Accused Products
Abstract
Metadata-driven undo is described. In an embodiment, a metadata repository stores metadata that is associated with operations. Attributes associated with each operation are also stored in the metadata. Each operation is associated with an undolet that includes instructions for generating undo entries for operations of a particular operation type. Undo log entries are generated using the metadata and the undolet when a request is intercepted that includes an undoable operation. When an undo command is issued, the instructions in the undo log that are associated with a particular business transaction are executed to “rewind” the transaction.
37 Citations
20 Claims
-
1. A system, comprising:
-
one or more processors; a computer-readable non-transitory storage media; a metadata repository that stores metadata associated with a plurality of operations, wherein each operation is associated with an operation type, wherein the metadata associated with each operation identifies at least;
a) one or more attributes associated with that operation, and b) an undolet associated with the operation type of the corresponding operation, wherein the undolet includes instructions for generating undo entries;undo logic configured to c) generate one or more entries in an undo log based at least in part on the metadata in the metadata repository and the undolet, wherein a first entry in the undo log is based on a first operation in a first request that is intercepted by the system and that is a request to change the value of a first object on a target system from a second value to a third value, and includes a first attribute value for a first attribute associated with the operation, and d) in response to intercepting the first request, generate a second request to the target system to retrieve the second value from the target system before the second value is changed in response to the first request. - View Dependent Claims (3, 4, 5, 6, 7)
-
-
2. (canceled)
-
8. A computer-readable non-transitory storage medium storing instructions which, when executed by one or more processors, cause the one or more processors to perform:
-
maintaining a metadata repository that stores metadata associated with a plurality of operations, wherein each operation is associated with an operation type, wherein the metadata associated with each operation identifies at least;
a) one or more attributes associated with that operation, and b) an undolet associated with the operation type of the corresponding operation, wherein the undolet includes instructions for generating undo entries;generating one or more entries in an undo log based at least in part on the metadata in the metadata repository and the undolet; wherein a first entry in the undo log is based on a first operation in an intercepted first request to change the value of a first object on a target system from a second value to a third value, said first request including a first attribute value for a first attribute associated with the operation; and in response to intercepting the first request, generating a second request to the target system to retrieve the second value from the target system before the second value is changed in response to the first request. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
9. (canceled)
-
15. A method, comprising:
-
maintaining a metadata repository that stores metadata associated with a plurality of operations, wherein each operation is associated with an operation type, wherein the metadata associated with each operation identifies at least;
a) one or more attributes associated with that operation, and b) an undolet associated with the operation type of the corresponding operation, wherein the undolet includes instructions for generating undo entries;generating one or more entries in an undo log based at least in part on the metadata in the metadata repository and the undolet; wherein a first entry in the undo log is based on a first operation in an intercepted first request to change the value of a first object on a target system from a second value to a third value, said first request including a first attribute value for a first attribute associated with the operation; and in response to intercepting the first request, generating a second request to the target system to retrieve the second value from the target system before the second value is changed in response to the first request; wherein the method is performed by one or more computing devices. - View Dependent Claims (17, 18, 19, 20)
-
-
16. (canceled)
Specification