On Thu, Feb 23, 2017 at 9:21 PM, Bruce Momjian <bruce@momjian.us> wrote: >
> I have what might be a supid question. As I remember, WARM only allows > a single index-column change in the chain. Why are you seeing such a > large performance improvement? I would have thought it would be that > high if we allowed an unlimited number of index changes in the chain.
I'm not sure how the test case is set up. If the table has multiple indexes, each on a different column, and only one of the indexes is updated, then you figure to win because now the other indexes need less maintenance (and get less bloated). If you have only a single index, then I don't see how WARM can be any better than HOT, but maybe I just don't understand the situation.
That's correct. If you have just one index and if the UPDATE modifies indexed indexed, the UPDATE won't be a WARM update and the patch gives you no benefit. OTOH if the UPDATE doesn't modify any indexed columns, then it will be a HOT update and again the patch gives you no benefit. It might be worthwhile to see if patch causes any regression in these scenarios, though I think it will be minimal or zero.