On Fri, Mar 3, 2017 at 2:54 PM, Andres Freund <andres@anarazel.de> wrote:
> On 2017-02-28 19:12:03 +0530, Pavan Deolasee wrote:
>> Since VM bits are only set during VACUUM which conflicts with CIC on the
>> relation lock, I don't see any risk of incorrectly skipping pages that the
>> second scan should have scanned.
>
> I think that's true currently, but it'd also prevent us from doing that
> in additional places. Which, in my opinion, we really should (and I
> believe that's realistically achievable). Thus I really don't want to
> base the correctness of CIC - a relatively infrequent operation - on the
> assumption that no VM bits can be set concurrenty due to the SUE lock.
I agree.
FWIW, the extra time that CIC takes over a plain CI is much reduced these days.
--
Peter Geoghegan