> You have ANALYZEd all these tables recently, I hope? The planner
> certainly doesn't think this query will take very long.
I have autovacuum running so I expect it takes care of ANALYZE, isn't it ?
I ran also analyze command before running explain analyze.
> To find out what's wrong, you're going to have to be patient enough to
> let an EXPLAIN ANALYZE run to completion. Plain EXPLAIN won't tell.
Here it is running in my local computer. I'm expecting run time no more 1
second
"Nested Loop Left Join (cost=0.00..1829.95 rows=1 width=24) (actual
time=492064.990..492064.990 rows=0 loops=1)"
" Filter: ((("inner".arttyyp <> 'Teenus'::bpchar) AND ("inner".arttyyp <>
'Komplekt'::bpchar)) OR ("inner".arttyyp IS NULL))"
" -> Nested Loop (cost=0.00..1825.01 rows=1 width=43) (actual
time=492064.983..492064.983 rows=0 loops=1)"
" -> Nested Loop (cost=0.00..1819.04 rows=1 width=24) (actual
time=492064.978..492064.978 rows=0 loops=1)"
" Join Filter: (("outer".dokumnr = "inner".dokumnr) AND
((("position"('VGYKITDNHMEBARCFJ'::text, ("outer".doktyyp)::text) <> 0) AND
(CASE WHEN ((NOT ("outer".objrealt)::boolean) OR ("outer".doktyyp =
'I'::bpchar)) THEN "outer".yksus ELSE "inner (..)"
" -> Seq Scan on dok (cost=0.00..787.80 rows=1 width=39)
(actual time=0.152..878.198 rows=7670 loops=1)"
" Filter: ((kuupaev >= '2006-04-08'::date) AND (kuupaev
<= '2006-04-27'::date) AND (NOT (eimuuda)::boolean) AND ((laonr)::double
precision = 1::double precision) AND ("position"('OSIDVGYKIF'::text,
(doktyyp)::text) <> 0) AND (((kuupaev):: (..)"
" -> Seq Scan on rid (cost=0.00..1019.42 rows=315 width=51)
(actual time=22.003..62.216 rows=839 loops=7670)"
" Filter: ((toode = '1EEKPANT'::bpchar) AND
(length(btrim((toode)::text)) > 2) AND (toode IS NOT NULL))"
" -> Index Scan using toode_pkey on toode (cost=0.00..5.96 rows=1
width=43) (never executed)"
" Index Cond: ('1EEKPANT'::bpchar = toode)"
" -> Index Scan using artliik_pkey on artliik (cost=0.00..4.92 rows=1
width=31) (never executed)"
" Index Cond: (("outer".grupp = artliik.grupp) AND ("outer".liik =
artliik.liik))"
"Total runtime: 492065.840 ms"
Andrus.