On Wed, Mar 5, 2008 at 9:29 PM, Tom Lane <[EMAIL PROTECTED]> wrote:
>
>
>  [ thinks some more... ]  I guess we could use a flag array dimensioned
>  MaxHeapTuplesPerPage to mark already-processed tuples, so that you
>  wouldn't need to search the existing arrays but just index into the flag
>  array with the tuple's offsetnumber.
>

We can actually combine this and the page copying ideas. Instead of copying
the entire page, we can just copy the line pointers array and work on the copy.
ISTM that the only place where we change the tuple contents is when we
collapse the redirected line pointers and that we can do at the end, on the
original page.

The last step which we run inside a critical section would then be just like
invoking heap_xlog_clean with the information collected in the first pass.

Thanks,
Pavan

-- 
Pavan Deolasee
EnterpriseDB     http://www.enterprisedb.com

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://mail.postgresql.org/mj/mj_wwwusr?domain=postgresql.org&extra=pgsql-hackers

Reply via email to