Re: UPDATE with JOIN not using index - Mailing list pgsql-general

From Arnaud Lesauvage
Subject Re: UPDATE with JOIN not using index
Date
Msg-id 4B9F9AB7.7070507@codata.eu
Whole thread Raw
In response to Re: UPDATE with JOIN not using index  (Richard Huxton <dev@archonet.com>)
Responses Re: UPDATE with JOIN not using index  (tv@fuzzy.cz)
List pgsql-general
Le 16/03/2010 15:25, Richard Huxton a écrit :
> OK - we have a merge join in the first case where it joins the
> pre-sorted output of both tables.
>
> In the second case it queries the index once for each row in "cellules".
>
> Now look at the costs. The first one is around 704,000 and the second
> one is 5,000,000 - about 6 times as much. That's why it's not using the
> index, because it thinks it will be more expensive.
>
> If it's not really more expensive that suggests your configuration
> values aren't very close to reality.
>
> The first query should run faster if it has more work_mem available too.
> At the moment, it's probably going back and fore doing an on-disk sort.

Indeed !
I admit that I had not tested the second query, I just thought that the
first one took way too long to execute.

I will try increasing work_mem, but it is already set at 16MB which I
found is quite high.

Thanks a lot for clarifying that !

Regards
Arnaud

pgsql-general by date:

Previous
From: Richard Huxton
Date:
Subject: Re: Text search
Next
From: Chris Roffler
Date:
Subject: Re: Text search