From: | Gokulakannan Somasundaram <gokul007(at)gmail(dot)com> |
---|---|
To: | "simon(at)2ndquadrant(dot)com" <simon(at)2ndquadrant(dot)com> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, PG Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Lazy Snapshots |
Date: | 2009-08-22 04:18:01 |
Message-ID: | 9362e74e0908212118v669d67c3l12fa1c9840562276@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi,
I have given some thought in this direction. I am just providing my idea.
a) Have a structure similar to commit log, which should also store,
transaction id at which the transaction got committed. Every transaction,
after committing should update the transaction id at which the commit has
happened
b) All the transactions- when it starts should have two figures - xmin and
also a transaction id after which nothing has got committed
c) So whenever it sees the records, which are not inside the window, it can
make decision by itself.
i) The ones below xmin and committed are visible
ii) the ones after xmax and committed are not visible
iii) When its something in between, then check the time at which the
commit happened in the structure and make the decision.
Ideally, it would be better to change the structure of commit log itself.
But maintaining an another structure also would help.
Thanks,
Gokul.
From | Date | Subject | |
---|---|---|---|
Next Message | Jean-Michel Pouré | 2009-08-22 07:40:55 | DELETE syntax on JOINS |
Previous Message | Tom Lane | 2009-08-22 01:55:07 | Re: Feedback about Drupal SQL debugging |