| From: | Neil Conway <neilc(at)samurai(dot)com> | 
|---|---|
| To: | Greg Stark <gsstark(at)mit(dot)edu> | 
| Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> | 
| Subject: | Re: Deferrable Unique Constraints | 
| Date: | 2005-01-27 04:31:29 | 
| Message-ID: | 1106800289.3226.47.camel@localhost.localdomain | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
On Wed, 2005-01-26 at 15:48 -0500, Greg Stark wrote:
> Well presumably you would need a non-unique index created for query execution
> purposes. The unique index would be purely for enforcing the constraint.
Yuck.
You could perhaps relax the uniqueness of the index during the
transaction itself, and keep around some backend-local indication of
which index entries it have been inserted. Then at transaction-commit
you'd need to re-check the inserted index entries to verify that they
are unique. It would be nice to just keep a pin on the leaf page that we
inserted into, although we'd need to take care to follow subsequent page
splits (could we use the existing L & Y techniques to do this?).
Needless to say, it would be pretty ugly...
-Neil
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2005-01-27 04:42:44 | Re: Deferrable Unique Constraints | 
| Previous Message | Christopher Browne | 2005-01-27 04:26:47 | Re: IBM patent |