Hi, On 2021-07-30 15:13:49 -0400, Robert Haas wrote: > On Thu, Jul 29, 2021 at 3:14 PM Andres Freund <and...@anarazel.de> wrote: > > I think those advantages are far outstripped by the big disadvantage of > > needing to either size the array accurately from the start, or to > > reallocate the whole array. Our current pre-allocation behaviour is > > very wasteful for most vacuums but doesn't handle large work_mem at all, > > causing unnecessary index scans. > > I agree that the current pre-allocation behavior is bad, but I don't > really see that as an issue with my idea. Fixing that would require > allocating the array in chunks, but that doesn't really affect the > core of the idea much, at least as I see it.
Well, then it'd not really be the "simple array approach" anymore :) > But I accept that Yura has a very good point about the memory usage of > what I was proposing. The lower memory usage also often will result in a better cache utilization - which is a crucial factor for index vacuuming when the index order isn't correlated with the heap order. Cache misses really are a crucial performance factor there. Greetings, Andres Freund