
           Postgresql can easily act as a Temporal database with
 some changes. Using this applications can get all changes performed on
 a particular tuple during its lifetime provided vaccum is not performed

 on that  particular table.

 Requirements:
      1) Every Tuble is uniquely identified by unique OID
      2) The tuple should be never overreturn or deleted

 The above two conditions are easily satisfied by the existing
postgresql
 database.


  Summary of changes:
      1) New type of  select statement need to added to the extisting
parser
            to get all the records of a particular tuple with a specific
oid.
            By using xmin,xmax we can get sequence of changes performed
on that tuple.
      2)  While scanning the heap for the new select statement , the
tuples which
            are marked as deleted (or invalid) are also picked up.
      3) Need to add one more attribute for every table to indicate
wether the
             tuple is dead(invalid) or not along with  existing
attributes  oid,xmin,xmax.
      4)  We should make sure the Oid is unique taking care of
wraparound problem.




regards
jana

Fri, 03 Aug 2001 13:37:12 +0800
Janardhana Reddy <jana-reddy@mediaring.com.sg>
Postgresql as Temporal Datbase: Summary and proposal 