On 31 Srpen 2011, 15:59, Andy Colson wrote:
> I assume:
> Buckets: 16384 Batches: 1 Memory Usage: 4531kB
>
> That means a total of 4.5 meg of ram was used for the hash, so if my
> work_mem was lower than that it would swap? (or choose a different plan?)
Why don't you try that? Just set the work_mem to 1MB or so and run the query.
I think it'll use the same plan but multiple batches - read just part of
the inner table so that the hash table fits into work_mem, scan the outer
table etc. The downside is it'd rescan the outer table several times.
Tomas