From: | Nik Ludmirsky <ludmirsky(at)gmail(dot)com> |
---|---|
To: | pgsql-ru-general(at)lists(dot)postgresql(dot)org |
Subject: | Postgres 9.6. Большое planning time в простом запросе |
Date: | 2018-03-12 16:11:28 |
Message-ID: | CALL=AMW-Vw2jw18OO19y5H5znOfQMtbTiuVtPpuqHq1i1_B2dw@mail.gmail.com |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-ru-general |
Коллеги,
после обновления до 9.6 стали медленно исполнятся некоторые запросы.
Попытался проанализировать и вижу, что в некоторых случаях на достаточно
простых запросах долго строится execution plan.
Для примера вот запрос:
SELECT
T1.*
FROM _Reference54 T1
LEFT OUTER JOIN _InfoRg4210 T2
ON T1._Fld9680RRef = T2._Fld4213RRef
WHERE ((T1._Fld5384 = 0)) AND ((T1._IDRRef =
'\202\260\360yYn\310\234\021\346\376U\244\354w\227'::bytea))
EXPLAIN ANALYSE показывает "Planning time: 1425.054 ms" при том, что
"Execution
time: 126.907 ms".
В чем проблема? Как можно ускорить планирование?
Nested Loop Left Join (cost=0.98..13291.41 rows=5619 width=237) (actual
time=40.649..126.838 rows=1 loops=1)
-> Index Scan using _reference54hpk on _reference54 t1 (cost=0.43..2.65
rows=1 width=237) (actual time=0.066..0.068 rows=1 loops=1)
Index Cond: ((_fld5384 = '0'::numeric) AND (_idrref =
'\202\260\360yYn\310\234\021\346\376U\244\354w\227'::bytea))
-> Index Only Scan using _inforg4210_bydims_rrrrr on _inforg4210 t2
(cost=0.55..13288.75 rows=1 width=19) (actual time=40.578..126.764 rows=1
loops=1)
Index Cond: (_fld4213rref = t1._fld9680rref)
Heap Fetches: 0"
Planning time: 1425.054 ms
Execution time: 126.907 ms
----
С уважением,
Людмирский Николай
From | Date | Subject | |
---|---|---|---|
Next Message | Andrey Lizenko | 2018-03-12 16:15:29 | Re: Postgres 9.6. Большое planning time в простом запросе |
Previous Message | Oleg Y. Danilkiff | 2018-01-16 16:05:25 | Re: server process was terminated by exception 0xC00000FD |