Globally incremented variable or clock based methods and apparatus to implement parallel transactions
AssigneeOracle America, Inc.
InventorsDavid Dice, Nir N. Shavit, Ori Shalev, Mark Moir
Life of this patent
Estimating the term…
Loading patent…
AssigneeOracle America, Inc.
InventorsDavid Dice, Nir N. Shavit, Ori Shalev, Mark Moir
Estimating the term…
The present disclosure describes a unique way for each of multiple processes to operate in parallel and use the same shared data without causing corruption to the shared data. For example, during a commit phase, a corresponding transaction can attempt to increment a globally accessible version information variable and store a current value of the globally accessible version information variable for updating version information associated with modified data regardless of whether an associated attempt by the corresponding transaction to modify the globally accessible version information variable was successful. As an alternative mode, a corresponding transaction can merely read and store a current value of the globally accessible version information variable without attempting to update the globally accessible version information variable before such use. In yet another application, a parallel processing environment implements a combination of both aforementioned modes depending on a self-abort rate of the transaction.
A method comprising:
A computer system comprising:
A computer program product including a computer-readable storage medium having instructions stored thereon for processing data information, such that the instructions, when carried out by a processing device, enable the processing device to:
Dependencies are inferred from the claim text.