| From: | Andy Colson <andy(at)squeakycode(dot)net> |
|---|---|
| To: | Pavan Deolasee <pavan(dot)deolasee(at)gmail(dot)com> |
| Cc: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | REVIEW Single pass vacuum - take 2 |
| Date: | 2011-09-07 02:58:48 |
| Message-ID: | 4E66DDE8.7080007@squeakycode.net |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On 08/22/2011 01:22 AM, Pavan Deolasee wrote:
> Hi All,
>
> Here is a revised patch based on our earlier discussion. I implemented
> Robert's idea of tracking the vacuum generation number in the line
> pointer itself. For LP_DEAD line pointers, the lp_off/lp_len is unused
> (and always set to 0 for heap tuples). We use those 30 bits to store
> the generation number of the vacuum which would have potentially
> removed the corresponding index pointers, if the vacuum finished
> successfully. The pg_class information is used to know the status of
> the vacuum, whether it failed or succeeded. 30-bit numbers are large
> enough that we can ignore any wrap-around related issues. With this
> change, we don't need any additional header or special space in the
> page which was one of the main objection to the previous version.
>
> Other than this major change, I have added code commentary at relevant
> places and also fixed the item.h comments to reflect the change. I
> think the patch is ready for a serious review now.
>
> Thanks,
> Pavan
>
Hi Pavan, I tried to apply your patch to git master (as of just now) and it failed. I assume that's what I should be checking out, right?
-Andy
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Noah Misch | 2011-09-07 03:03:59 | Re: memory-related bugs |
| Previous Message | Fujii Masao | 2011-09-07 02:11:54 | Re: postgresql.conf archive_command example |