Hi Bharath, Thanks for the numbers. Elapsed time was noisy on my laptop, so I counted instructions during redo on a release build.
With indexes it works as you said. I replayed pgbench with three extra indexes. Master ran 12.1G instructions and v3 ran 11.7G. The hash table ran 8.5G, close to 8.2G with prefetch off. Without fpw, the hash table ran 3.5%(37.79G vs 36.50G) more instructions than v3. Most of the extra cost is hashing. On a miss the slot is computed twice, once in IsRecent and once in AddRecent. When I computed it once, the extra cost fell to 2.8%. Thanks, Shihao
