| From: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> | 
|---|---|
| To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> | 
| Cc: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> | 
| Subject: | Re: Idea for nested transactions / savepoints | 
| Date: | 2001-08-05 18:30:43 | 
| Message-ID: | 200108051830.f75IUhM25071@candle.pha.pa.us | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
> Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> writes:
> > My idea is that we not put UNDO information into WAL but keep a List of
> > rel ids / tuple ids in the memory of each backend and do the undo inside
> > the backend.
> 
> The complaints about WAL size amount to "we don't have the disk space
> to keep track of this, for long-running transactions".  If it doesn't
> fit on disk, how likely is it that it will fit in memory?
Sure, we can put on the disk if that is better.  I thought the problem
with WAL undo is that you have to keep UNDO info around for all
transactions that are older than the earliest transaction.  So, if I
start a nested transaction, and then sit at a prompt for 8 hours, all
WAL logs are kept for 8 hours.
We can create a WAL file for every backend, and record just the nested
transaction information.  In fact, once a nested transaction finishes,
we don't need the info anymore.  Certainly we don't need to flush these
to disk.
-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman(at)candle(dot)pha(dot)pa(dot)us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2001-08-05 18:38:03 | Re: Re: Name for new VACUUM | 
| Previous Message | Hannu Krosing | 2001-08-05 18:10:58 | Re: Re: Name for new VACUUM |