Nicolas Seinlet <nico...@seinlet.com> writes:
> Many thanks for the fast response. The full query plan is below, and the 
> Dalibo link points to it as well. You're right, it's a merge join. One table 
> doesn't have up-to-date statistics, because the table is filled during the 
> transaction involving this query.

Sure looks like incorporating an ANALYZE into the transaction would help
matters.  This misestimation:

>                                                    ->  Seq Scan on 
> account_invoice_line il  (cost=0.00..9885.48 rows=752 width=22) (actual 
> time=0.049..121.238 rows=150448 loops=1)
>                                                          Filter: 
> (display_type IS NULL)

looks like it's really hurting you, and "ANALYZE account_invoice_line"
after loading that table ought to be enough to fix that.

                        regards, tom lane


Reply via email to