Re: A problem with the IN clause
| От | Tom Lane | 
|---|---|
| Тема | Re: A problem with the IN clause | 
| Дата | |
| Msg-id | 18900.1084990188@sss.pgh.pa.us обсуждение исходный текст  | 
		
| Ответ на | A problem with the IN clause (Sean Shanny <shannyconsulting@earthlink.net>) | 
| Ответы | 
                	
            		Re: A problem with the IN clause
            		
            		 | 
		
| Список | pgsql-general | 
Sean Shanny <shannyconsulting@earthlink.net> writes:
> When I run this against our warehouse instance I get an out of memory
> error.  If I remove the
> AND t1.newsletterid_key IN (SELECT newsletterid FROM t_newscontentstatic)
> portion if runs fine.
I think the problem is not there at all, but with drastic
underestimation of the number of rows coming from f_pageviews:
>                            ->  Seq Scan on f_pageviews t1
> (cost=0.00..585486.72 rows=1 width=24) (actual
> time=60502.415..-463715.543 rows=24422838 loops=1)
>                                  Filter: ((date_key >= 496) AND
> (date_key <= 502))
The plan you say is failing is trying to load this result into a
hashtable ... and since it's only expecting 1 row, it's not going
to try to partition the hashtable or anything like that.
Are your ANALYZE stats for f_pageviews up to date?  Perhaps you need to
increase the stats target for date_key to get more resolution in the
stats.
            regards, tom lane
		
	В списке pgsql-general по дате отправления: