Wiktor Wodecki <wiktor(dot)wodecki(at)net-m(dot)de> writes:
> As you can see the 8.4 run is 16 times slower. It was even worse before
> we added the index idx_b_b_date which we didn't have initially.
> Is there anything we can do about this issue? Do you need more information?
You could prevent flattening of the EXISTS subquery by adding an OFFSET
0 or some such to it. A real fix involves being able to handle nestloop
indexscans where the parameter comes from more than one join level up;
there's been some discussion about that but it's not going to happen
in 8.4.x.
regards, tom lane