Learn it to not generate with "WITH IN (subq)", is this can be quite
slow on postgresql. Use joins instead.
looks like planner was wrong about rowcount in one place: Hash IN Join
(cost=2204.80..4809.31 rows=292 width=202) (actual
time=12.856..283.916 rows=15702 loops=1)
I have no idea why, probably more knowledgeable guys will know more
about why. But overall, all other stats seem to be okay.
What's the default_statistics_target setting in the postgresql set to?
One thing tho, what's the version, and platform.