Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Synthetic Timestamps

IP.com Disclosure Number: IPCOM000121926D
Original Publication Date: 1991-Oct-01
Included in the Prior Art Database: 2005-Apr-04
Document File: 1 page(s) / 39K

Publishing Venue

IBM

Related People

Hoffman, RD: AUTHOR [+2]

Abstract

Disclosed is a method to extend the accuracy of timestamps by comparing timestamps from consecutive events and arbitrarily incrementing the later timestamp by a value which guaranteed not to overlap a future timestamp.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 80% of the total text.

Synthetic Timestamps

      Disclosed is a method to extend the accuracy of
timestamps by comparing timestamps from consecutive events and
arbitrarily incrementing the later timestamp by a value which
guaranteed not to overlap a future timestamp.

      The OS/2* operating system provides timing information which is
accurate to the hundreth of a second.  SAA* SQL specifies that
TIMESTAMPS have a precision of microseconds. Currently, SQL
timestamps in OS/2 carry microsecond precision, but only
hundreth-of-a-second accuracy.  This may lead to non-unique
timestamps.

      Timestamps are generated at the beginning of each SQL
statement.  Currently, they are built from information provided by
the operating system and are exactly as accurate as that information.
With the new technique, we will generate a base timestamp at the time
of the initial connection to the database and initialize a counter.
Then, at the beginning of each SQL statement we will generate a
timestamp from the information provided by the operating system, and
compare this timestamp to the previous timestamp.  If the two are the
same, we will add the value of the counter to the microseconds
portion of the current timestamp, and increment the counter.  If the
two are different, we will reset the counter and leave the value of
the current timestamp untouched.

      The counter will be incremented by a value which is smaller (in
microseconds) than the minimum time it takes to execute a single...