From: | Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Patches <pgsql-patches(at)postgresql(dot)org> |
Subject: | Re: nested xacts and phantom Xids |
Date: | 2004-06-29 21:47:58 |
Message-ID: | 20040629214758.GA25473@dcc.uchile.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers pgsql-patches |
On Sun, Jun 20, 2004 at 08:49:22PM -0400, Tom Lane wrote:
> There's a good deal more than that missing :-(. Here are the modules or
> actions that are called in CommitTransaction and/or AbortTransaction
> that have not yet been touched by the patch:
>
> localbuf.c (refcounts need fixed same as bufmgr)
Here is a patch against the original versions of these files; cleaned up
bufmgr.c somewhat. Adds the same logic to local buffers (moving the
BufferRefCount struct declaration to buf_internals.h so it's shared by
both bufmgr.c and localbuf.c). Needs xact.c and xact.h patched as in
the second patch.
As with the bufmgr.c original patch, I don't really know how to test
that this actually works. I fooled around with printing what it was
doing during a subtrans commit/abort, and it seems OK, but that's about
it. In what situations can a transaction roll back with a nonzero
reference count in a local buffer?
--
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"I dream about dreams about dreams", sang the nightingale
under the pale moon (Sandman)
Attachment | Content-Type | Size |
---|---|---|
buffer.patch | text/plain | 10.6 KB |
buffer-xact.patch | text/plain | 1.8 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Joe Conway | 2004-06-29 22:27:59 | Re: grant execute on many functions |
Previous Message | Jean-Denis Giguere | 2004-06-29 21:39:53 | grant execute on many functions |
From | Date | Subject | |
---|---|---|---|
Next Message | Andrew Dunstan | 2004-06-29 21:56:41 | Re: plperl patch |
Previous Message | Alvaro Herrera | 2004-06-29 20:17:56 | Re: nested xacts and phantom Xids |