Re: Momentary Delay

Поиск
Список
Период
Сортировка
От Anderson Valadares
Тема Re: Momentary Delay
Дата
Msg-id CALaY=X=Ava-pexKahLWROf5fXN3RZANBax_tZjTVTie_4tioWg@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Momentary Delay  (Adrian Klaver <adrian.klaver@aklaver.com>)
Ответы Re: Momentary Delay  (Adrian Klaver <adrian.klaver@aklaver.com>)
Список pgsql-general
2015-06-08 12:30 GMT-03:00 Adrian Klaver <adrian.klaver@aklaver.com>:
On 06/08/2015 07:59 AM, Anderson Valadares wrote:
Hi
  We are experiencing an intermittent problem in a GIS database from a
client. Some times of the day is as if the PostgreSQL executed the
slowest operations see below an example. The query was performed three
times, twice I canceled and the third time I left it to end. The
consultation took 10 seconds to finish, but the measured execution time
is 20 ms. As we have several queries that run every 2 seconds when this
momentary delay occurs queries accumulate and burst the limit of 203
connections allowed. The interval of "momentary stop" are approximately
2 seconds occurring at random times and during these stoppages occur no
locks and no increased load on the server is identified. There is a job
2/2 seconds locks collection of information, running queries, etc., nmon
also collects information every 2 seconds.

I do not have an answer, but I do have a question. What does:

"There is a job
2/2 seconds locks collection of information, running queries, etc"

mean?



My client asks what causes
these momentary stops? because it affects all operations of the
database? etc. How do I identify what is causing these delays in
executions of operations in the database?

The Server is a IBM P720 128G RAM PostgreSQL 9.2.9 on
powerpc-ibm-aix7.1.0.0, compiled by gcc (GCC) 4.6.4, 64-bit

Evolution of the number of connections for a period

snap_datetime                       |  #connections
----------------------------------------------+-------------
2015-06-05 09:25:00.954731-03 |74
2015-06-05 09:26:00.249187-03 |205
2015-06-05 09:27:00.826874-03 |207
2015-06-05 09:28:00.374666-03 |73
2015-06-05 09:29:00.690696-03 |75


Occurrence of the problem

citgis=# select max(dvi_sub.dvi_cod_dados_via_iti) as dvi_cod_dados_via_iti,
             dvi_sub.via_cod_viagem
              from gis_dvi_dados_viagem_itinerario dvi_sub,
gis_via_viagem via_sub, gis_iti_itinerario iti_sub
              where dvi_sub.via_cod_viagem = via_sub.via_cod_viagem
                and via_sub.via_status_viagem = 'A'
                and via_sub.via_dt_hora_ini > now() - interval '9 hours'
                and iti_sub.lin_cod_linha = 389
                and iti_sub.iti_sentido_itinerario = 'I'
                and iti_sub.iti_cod_itinerario_linha =
via_sub.iti_cod_itinerario_linha
                and dvi_sub.vlo_cod_localizacao is not null
              group by dvi_sub.via_cod_viagem,
iti_sub.iti_cod_itinerario_linha, via_sub.equ_cod_eqpto
;
Cancel request sent
ERROR:  canceling statement due to user request
Time: 2555.557 ms
citgis=# select max(dvi_sub.dvi_cod_dados_via_iti) as dvi_cod_dados_via_iti,
             dvi_sub.via_cod_viagem
              from gis_dvi_dados_viagem_itinerario dvi_sub,
gis_via_viagem via_sub, gis_iti_itinerario iti_sub
              where dvi_sub.via_cod_viagem = via_sub.via_cod_viagem
                and via_sub.via_status_viagem = 'A'
                and via_sub.via_dt_hora_ini > now() - interval '9 hours'
                and iti_sub.lin_cod_linha = 389
                and iti_sub.iti_sentido_itinerario = 'I'
                and iti_sub.iti_cod_itinerario_linha =
via_sub.iti_cod_itinerario_linha
                and dvi_sub.vlo_cod_localizacao is not null
              group by dvi_sub.via_cod_viagem,
iti_sub.iti_cod_itinerario_linha, via_sub.equ_cod_eqpto
;
Cancel request sent
ERROR:  canceling statement due to user request
Time: 2192.572 ms
citgis=# explain analyze select max(dvi_sub.dvi_cod_dados_via_iti) as
dvi_cod_dados_via_iti,
             dvi_sub.via_cod_viagem
              from gis_dvi_dados_viagem_itinerario dvi_sub,
gis_via_viagem via_sub, gis_iti_itinerario iti_sub
              where dvi_sub.via_cod_viagem = via_sub.via_cod_viagem
                and via_sub.via_status_viagem = 'A'
                and via_sub.via_dt_hora_ini > now() - interval '9 hours'
                and iti_sub.lin_cod_linha = 389
                and iti_sub.iti_sentido_itinerario = 'I'
                and iti_sub.iti_cod_itinerario_linha =
via_sub.iti_cod_itinerario_linha
                and dvi_sub.vlo_cod_localizacao is not null
              group by dvi_sub.via_cod_viagem,
iti_sub.iti_cod_itinerario_linha, via_sub.equ_cod_eqpto
;
Cancel request sent
ERROR:  canceling statement due to user request
Time: 10164.015 ms
citgis=# select now();
               now
-------------------------------
  2015-06-05 09:27:22.006072-03
(1 row)

Time: 0.152 ms
citgis=# select max(dvi_sub.dvi_cod_dados_via_iti) as dvi_cod_dados_via_iti,
             dvi_sub.via_cod_viagem
              from gis_dvi_dados_viagem_itinerario dvi_sub,
gis_via_viagem via_sub, gis_iti_itinerario iti_sub
              where dvi_sub.via_cod_viagem = via_sub.via_cod_viagem
                and via_sub.via_status_viagem = 'A'
                and via_sub.via_dt_hora_ini > now() - interval '9 hours'
                and iti_sub.lin_cod_linha = 389
                and iti_sub.iti_sentido_itinerario = 'I'
                and iti_sub.iti_cod_itinerario_linha =
via_sub.iti_cod_itinerario_linha
                and dvi_sub.vlo_cod_localizacao is not null
              group by dvi_sub.via_cod_viagem,
iti_sub.iti_cod_itinerario_linha, via_sub.equ_cod_eqpto
;
  dvi_cod_dados_via_iti | via_cod_viagem
-----------------------+----------------
             1059964443 |        7989813
             1060072723 |        7990876
(2 rows)

Time: 5565.175 ms
citgis=# select max(dvi_sub.dvi_cod_dados_via_iti) as dvi_cod_dados_via_iti,
             dvi_sub.via_cod_viagem
              from gis_dvi_dados_viagem_itinerario dvi_sub,
gis_via_viagem via_sub, gis_iti_itinerario iti_sub
              where dvi_sub.via_cod_viagem = via_sub.via_cod_viagem
                and via_sub.via_status_viagem = 'A'
                and via_sub.via_dt_hora_ini > now() - interval '9 hours'
                and iti_sub.lin_cod_linha = 389
                and iti_sub.iti_sentido_itinerario = 'I'
                and iti_sub.iti_cod_itinerario_linha =
via_sub.iti_cod_itinerario_linha
                and dvi_sub.vlo_cod_localizacao is not null
              group by dvi_sub.via_cod_viagem,
iti_sub.iti_cod_itinerario_linha, via_sub.equ_cod_eqpto
;
  dvi_cod_dados_via_iti | via_cod_viagem
-----------------------+----------------
             1059964445 |        7989813
             1060072725 |        7990876
(2 rows)

Time: 27.944 ms
citgis=# select max(dvi_sub.dvi_cod_dados_via_iti) as dvi_cod_dados_via_iti,
             dvi_sub.via_cod_viagem
              from gis_dvi_dados_viagem_itinerario dvi_sub,
gis_via_viagem via_sub, gis_iti_itinerario iti_sub
              where dvi_sub.via_cod_viagem = via_sub.via_cod_viagem
                and via_sub.via_status_viagem = 'A'
                and via_sub.via_dt_hora_ini > now() - interval '9 hours'
                and iti_sub.lin_cod_linha = 389
                and iti_sub.iti_sentido_itinerario = 'I'
                and iti_sub.iti_cod_itinerario_linha =
via_sub.iti_cod_itinerario_linha
                and dvi_sub.vlo_cod_localizacao is not null
              group by dvi_sub.via_cod_viagem,
iti_sub.iti_cod_itinerario_linha, via_sub.equ_cod_eqpto
;
  dvi_cod_dados_via_iti | via_cod_viagem
-----------------------+----------------
             1059964445 |        7989813
             1060072727 |        7990876
(2 rows)

Time: 24.428 ms

Greetings
   Anderson


--
Adrian Klaver
adrian.klaver@aklaver.com


Adrian
 forgiveness for my english the meant "Exists a job run every 2 seconds capturing information of locks, long running queries, etc."


Anderson

В списке pgsql-general по дате отправления:

Предыдущее
От: Adrian Klaver
Дата:
Сообщение: Re: Momentary Delay
Следующее
От: Andres Freund
Дата:
Сообщение: Re: [HACKERS] 9.4.1 -> 9.4.2 problem: could not access status of transaction 1