Patent ID: 8538922

Claim:
A computer, comprising: memory for storing a program; the memory comprising a first epoch column pair associated with a first global identification (ID), wherein the first global ID has an available first maximum value; the memory comprising a second epoch column pair associated with a second global identification, wherein the second global ID has an available second maximum value; wherein the first epoch column pair and the second epoch column pair respectively comprise create timestamps and end timestamps for a plurality of tuples; and a processor, functionally coupled to the memory, the processor being responsive to computer-executable instructions contained in the program and operative for: upon receiving first snapshots, increasing the first global ID with each of the first snapshots; when the first global ID reaches a predefined value, switching to the second global ID associated with the second epoch column pair; wherein switching to the second global ID associated with the second epoch column pair comprises: determining that a last update referencing the first epoch column pair finished with the first global ID equal to the available first maximum value minus 1; based on determining that the first global ID equals the available first maximum value minus 1, toggling a flag to switch to the second global ID associated with the second epoch column pair; upon receiving second snapshots, increasing the second global ID with each of the second snapshots; and resetting the first global ID and resetting the first epoch column pair, based on conditions comprising: determining when tasks are referencing the first snapshots to the first epoch column pair; when no tasks are referencing the first snapshots, allowing the first global ID to be reset to 0 and allowing the first epoch column pair to be reset; when there are tuples that are not set to delete in the first epoch column pair, carrying the tuples into the second epoch pair with second create timestamps and second end timestamps; and when there are the tuples that are not set to delete in the first epoch column pair setting the second create timestamps to 0 and the second end timestamps to the available second maximum value for the second global ID.