Re: Resumable vacuum proposal and design overview
От | Zeugswetter Andreas ADI SD |
---|---|
Тема | Re: Resumable vacuum proposal and design overview |
Дата | |
Msg-id | E1539E0ED7043848906A8FF995BDA57901CAFD36@m0143.s-mxs.net обсуждение исходный текст |
Ответ на | Re: Resumable vacuum proposal and design overview (Galy Lee <lee.galy@oss.ntt.co.jp>) |
Список | pgsql-hackers |
> > You haven't explained how saving the dead-tuple-list could be done in > > a safe mannner and it seems risky to me. > > The files are placed in a new directory $PGDATA/pg_vacuum > with the name: spcNode.dbNode.relNode for each relations > which have been interrupted during vacuum. > > It has the format likes: > > 1. VacStateFileHeader > 2. VacStateData > 3. Dead Tuple list > 4. CRC32 > > The files are removed > - when original physical heap files are removed, > - when vacuum full have been issued, > - or after the content has been read in memory. > - etc. > > Is there any potential big risk there? Correct me if I am wrong. The main risc is not a corrupt file or broken list. The risc is, that a ctid in the list points at a tuple that is not dead anymore. To avoid that risc you would need to: 1. keep the vacuum lock open 2. leave the vacuum tx open (or reevaluate visibility of list members upon resume) Andreas
В списке pgsql-hackers по дате отправления: