Re: Nested transactions: low level stuff - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: Nested transactions: low level stuff
Date
Msg-id 200303200342.h2K3gKW05642@candle.pha.pa.us
Whole thread Raw
In response to Re: Nested transactions: low level stuff  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Nested transactions: low level stuff
List pgsql-hackers
Tom Lane wrote:
> Hiroshi Inoue <Inoue@tpf.co.jp> writes:
> > Bruce Momjian wrote:
> >> You mean abort subtransactions?  Each subtransaction gets its own
> >> transaction id, so we just mark that as aborted --- there is no undo of
> >> tuples, though I had originally suggested that approach years ago.
> 
> > Vadim planned to implement the savepoints functionality
> > using UNDO mechanism. AFAIR it was never denied explicitly.
> 
> Given all the flak we got about WAL growth during the time we had that
> code enabled, I think there's no chance that UNDO will be the preferred
> path.  It's not workable with big transactions.
> 
> There are other problems besides WAL bloat, too.  I realized while I was
> working on the btree code a few weeks ago that it's fundamentally
> unfriendly to UNDO, because there are some operations you'd want to
> UNDO (viz, insertion of a leaf item pointing at a heap tuple) and some
> you would not (viz, splitting of index pages and subsequent insertion of
> items into upper tree levels).  But the same WAL entry might include
> both kinds of operation.  This could be got round, perhaps, but that
> code is overcomplicated already ...

I assumed the UNDO would have had to be in a separate place, or allow
compression of the WAL file to keep needed UNDO stuff but get rid of
unneeded stuff --- it was all quite complicated.

--  Bruce Momjian                        |  http://candle.pha.pa.us pgman@candle.pha.pa.us               |  (610)
359-1001+  If your life is a hard drive,     |  13 Roberts Road +  Christ can be your backup.        |  Newtown Square,
Pennsylvania19073
 


pgsql-hackers by date:

Previous
From: "Shridhar Daithankar"
Date:
Subject: Re: [pgsql-advocacy] PostgreSQL flamage on Slashdot
Next
From: Hiroshi Inoue
Date:
Subject: Re: Nested transactions: low level stuff