Patent ID: 7089356

Claim:
A method for processing sequence operations, the method comprising the steps of: during execution of a parallel operation performed by a plurality of processes from a single database instance, in response to a request from a first process for a value from a sequence of unique values, populating a first process-level cache with a representation of a first set of unique values from the sequence of unique values; wherein populating the first process-level cache includes obtaining an instance-level lock on an instance-level cache that stores, for all processes of the instance, a representation of the sequence of unique values; when a first process of the plurality of processes requires a value from the sequence of unique values, the first process obtaining, based on the representation in the first cache, a value that has not previously been provided to the first process; wherein the first process-level cache is used exclusively for storing values representing the first set of unique values for use by the first process; populating a second process-level cache with a representation of a second set of unique values from the sequence of unique values, the second cache being different than the first cache; wherein populating the second process-level cache includes obtaining an instance-level lock on the instance-level cache; and when a second process of the plurality of processes requires a value from the sequence of values, the second process obtaining, based on the representation in the second cache, a value that has not previously been provided to the second process; wherein the second process-level cache is used exclusively for storing values representing the second set of unique values for use by the second process.