* There was a slowdown reported of around 1-3% (depending on the exact version of the patch) on an IBM power machine when doing an index rebuild. The results were fairly noisy for me, but it seemed to hold up. See http://www.postgresql.org/message-id/CA +Tgmobnu7XEn1gRdXnFo37P79bF=qLt46=37ajP3Cro9dBRaA@mail.gmail.com
Hi Jeff,
I've been looking over the code and reason the previous emails about this patch.
I don't yet understand if the reported slowdown is from the increase in struct size or from the additional work being done in palloc() calls, however, on reading the code I did notice an existing redundant NULL check in AllocSetAlloc() right where you put you're extra accounting code.
The attached patch should apply on top of your patch and removes the extra NULL check.
Perhaps if some over the overhead is the extra instructions then this can help get us back to where we were before.