Patent ID: 8892515

Claim:
A computer program product for identifying conflicts between an index of temporal keys and a prospective temporal key to be inserted into the index, comprising: a computer-readable storage medium having computer-readable program code embodied therewith, the computer-readable program code comprising: computer-readable program code to determine whether a first range of time specified by a first temporal key within the index of temporal keys overlaps with a prospective range of time specified by the prospective temporal key, wherein the temporal keys in the index of temporal keys are sorted based at least in part on a time value associated with each of the temporal keys; and computer-readable program code to determine whether the prospective temporal key conflicts with any temporal keys in the index of temporal keys, wherein the prospective temporal key conflicts with the first temporal key if the first range of time overlaps with the prospective range of time and the first temporal key is not a pseudo-deleted key, and further comprising computer-readable program code to: scan the index of temporal keys to identify a next temporal key that potentially conflicts with the prospective temporal key; and determine whether the prospective temporal key conflicts with the next key, based on whether the prospective range of time conflicts with a next range of time specified by the next temporal key and whether the next temporal key is a pseudo-deleted key, wherein the scanning and determining are repeated until (i) a first temporal key with a different principal key value from the prospective temporal key is found, (ii) a non-overlapping temporal key that is not pseudo-deleted is found, or (iii) no potentially conflicting keys remain in the index.