> On Dec 11, 2016, at 08:37, Melvin Davidson <melvin6925@gmail.com> wrote:
>
> Yes, I see your point, but the case where the row does not fit into the same block
> would only occur with unlimited field types such as var[], bytea[], etc.
No, that's not correct either. A block can fill up for any number of reasons: Dead tuples, a long HOT chain, or just a
lotof data packed into the block. The first UPDATE to a tuple in a block that was populated by continuous INSERTs or a
COPY,if the table is using the default fillfactor, will cause the new tuple to be written to a different block, which
willcause an index update.
The important thing to remember is that the process you are describing (in which indexes are not updated unless a
columninvolved in the index changes) is an optimization, Heap-Only Tuples. It's a very common optimization, but it's
notguaranteed.
--
-- Christophe Pettus
xof@thebuild.com