Here is a patch that fixes some of the TODO items in the nested xacts
handle large objects
namespace (temp namespace cleanup)
Make TransactionIdIsInProgress more efficient. Make a subxid cache and
a negative xid cache.
Nesting level report via a ParameterStatus message sent just before
ReadyForQuery (Z message).
Allow a readonly subtransaction inside a read-write parent, but not
Several tests in tqual.c have been 'optimized'. This means most uses of
SubTransXidsHaveCommonAncestor are gone. Also there are additional
places where HEAP_XMAX_INVALID is set.
There are some likely controversial changes; the Xid caches, in the
first place. I have tested carefully but I'm not sure if all the
possible race conditions are accounted for.
Second, the storage/file/fd.c management. I unified the arrays for
AllocateDir and AllocateFile in a single array. It works fine AFAICS,
but I'd feel better if someone more knowledgeable takes a look.
Password file was already reviewed -- comments needed some work, which
is in. Temp namespace handling uses the same design idea.
Large objects are managed setting the CurrentResourceOwner to
TopTransactionResourceOwner; they are manually freed on subtransaction
abort (if allocated inside the subtransaction), and kept open till main
Please review this patch. In the meantime I'll concentrate on some SGML
docs and sourcecode comments where needed.
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"I personally became interested in Linux while I was dating an English major
who wouldn't know an operating system if it walked up and bit him."
pgsql-patches by date
|Next:||From: Tom Lane||Date: 2004-07-26 20:10:17|
|Subject: Re: win32 version info |
|Previous:||From: Magnus Hagander||Date: 2004-07-26 19:53:59|
|Subject: Re: win32 version info|