Re: IN subquery not using a hash

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Paul Tillotson <spam1011(at)adelphia(dot)net>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: IN subquery not using a hash
Date: 2005-07-21 00:04:17
Message-ID: 26716.1121904257@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Paul Tillotson <spam1011(at)adelphia(dot)net> writes:
> For the following query, postgres is running the IN subquery over and
> over again (once for each row scanned in the parent table.)
> I would have expected it to run the whole query once and create a hash
> which would then be probed once for every row scanned in the parent
> table. I assumed that it was not doing so because it thought that the
> resulting hash table would exceed sort_mem,

Hardly likely, considering it's estimating only 296 rows in the subquery
output. My bet is that you've chosen a datatype whose comparisons are
not hashable (like char(n)). What is the datatype of parentid in these
tables, anyway?

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Paul Tillotson 2005-07-21 00:11:46 Re: IN subquery not using a hash
Previous Message Paul Tillotson 2005-07-20 23:33:19 IN subquery not using a hash