From: | Alvaro Herrera <alvherre(at)surnet(dot)cl> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl>, Heikki Linnakangas <hlinnaka(at)iki(dot)fi>, Patches <pgsql-patches(at)postgresql(dot)org> |
Subject: | Re: Are you actively hacking on 2PC? |
Date: | 2005-06-09 01:16:48 |
Message-ID: | 20050609011648.GA7548@surnet.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-patches |
Ok, I made some more changes and the current patch is here (the same new
files list applies). If you already started looking at the other patch
I can give you the patch between both, if it makes your life easier.
Additionally I collected some to-do entries, maybe you find it useful.
I'm sure you'll rewrite lots of things, so in order not to collide I'll
go back to my shared dependencies patch :-) (regarding the two things I
said I'd work on, notifes are already supported; and large object
support seems more hassle than worth to implement and we could punt for
this release ... )
* Verify that TransactionIdIsInProgress is correct w.r.t.
TransactionIdIsPrepared.
* MultiXactId needs to be supported.
* Clean up the callback support.
* Make sure we don't lose a file descriptor after BasicOpenFile if we
ereport() after opening it. Maybe use FileNameOpenFile instead.
* Clean up the use of transaction identifiers. X/Open has a Transaction
Identifier standard definition, look that up.
* Is PREPARE TRANSACTION the best interface? What about marking a transaction
for preparing when it begins? Apparently the XA spec requires/prefers this.
* Fix the erroneous sinval interactions reported by the regression test.
* Make the relcache-file-delete logic separate from particular sinval messages.
* Check whether the TwoPhaseStateLock usage per GetPreparedTransactionXidList
is safe. (In particular in CheckPointTwoPhase)
* Rethink about using both WAL and a state file. (If we declared the
intent to persist a transaction when it begins, maybe we don't need
the state file at all.)
* Rework the XLog entries for prepare, commit prepared, abort prepared.
They seem messy.
* Verify the order of calls in PrepareTransaction.
* Why is the new code in GetOldestXmin dependent on allDbs? That seems bogus.
* Add a databaseId field in GlobalTransactionData, and check it where
appropiate.
--
Alvaro Herrera (<alvherre[a]surnet.cl>)
"The first of April is the day we remember what we are
the other 364 days of the year" (Mark Twain)
Attachment | Content-Type | Size |
---|---|---|
twophase-2005-06-08.patch | text/plain | 129.2 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Bruce Momjian | 2005-06-09 01:55:59 | Re: [HACKERS] Should *.backup files ever be removed from pg_xlog? |
Previous Message | Tom Lane | 2005-06-09 00:12:32 | Re: ALTER SCHEMA ... SET TABLESPACE |