Обсуждение: Odd DEALLOCATE statements never finish in 9.2?
I installed 9.2 on our new server and am seeing something odd that doesn't happen in 8.4:
postgres=# select datname, pid, usename, query from pg_stat_activity where query != '<IDLE>';
datname | pid | usename | query
------------+-------+----------+------------------------------------------------------------------------------------
emolecules | 19249 | test | DEALLOCATE dbdpg_p18629_26
emolecules | 19250 | test | DEALLOCATE dbdpg_p18625_20
emolecules | 19251 | test | DEALLOCATE dbdpg_p18632_23
postgres | 21583 | postgres | select datname, pid, usename, query from pg_stat_activity where query != '<IDLE>';
emolecules | 19253 | test | DEALLOCATE dbdpg_p18627_18
emolecules | 19320 | test | DEALLOCATE dbdpg_p18640_7
emolecules | 19271 | test | DEALLOCATE dbdpg_p18628_17
emolecules | 19779 | test | DEALLOCATE dbdpg_p19319_2
emolecules | 19282 | test | DEALLOCATE dbdpg_p18626_12
emolecules | 19321 | test | DEALLOCATE dbdpg_p19283_9
There are indeed nine Postgres backends running. They are connected to nine "fastcgi" Apache processes that sit there and wait for low-overhead requests.
What are these DEALLOCATE requests, and why do they just sit there and never finish?
Thanks,
Craig
postgres=# select datname, pid, usename, query from pg_stat_activity where query != '<IDLE>';
datname | pid | usename | query
------------+-------+----------+------------------------------------------------------------------------------------
emolecules | 19249 | test | DEALLOCATE dbdpg_p18629_26
emolecules | 19250 | test | DEALLOCATE dbdpg_p18625_20
emolecules | 19251 | test | DEALLOCATE dbdpg_p18632_23
postgres | 21583 | postgres | select datname, pid, usename, query from pg_stat_activity where query != '<IDLE>';
emolecules | 19253 | test | DEALLOCATE dbdpg_p18627_18
emolecules | 19320 | test | DEALLOCATE dbdpg_p18640_7
emolecules | 19271 | test | DEALLOCATE dbdpg_p18628_17
emolecules | 19779 | test | DEALLOCATE dbdpg_p19319_2
emolecules | 19282 | test | DEALLOCATE dbdpg_p18626_12
emolecules | 19321 | test | DEALLOCATE dbdpg_p19283_9
There are indeed nine Postgres backends running. They are connected to nine "fastcgi" Apache processes that sit there and wait for low-overhead requests.
What are these DEALLOCATE requests, and why do they just sit there and never finish?
Thanks,
Craig
Craig James <cjames@emolecules.com> writes: > I installed 9.2 on our new server and am seeing something odd that doesn't > happen in 8.4: > postgres=# select datname, pid, usename, query from pg_stat_activity where > query != '<IDLE>'; The query column now means "current or last query" --- there's a separate column to check for the idle status. Those DEALLOCATEs are evidently what your app does before going idle. regards, tom lane
On Thu, Oct 18, 2012 at 2:54 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
Nice feature. Thanks.
Craig
Craig James <cjames@emolecules.com> writes:
> I installed 9.2 on our new server and am seeing something odd that doesn't
> happen in 8.4:
> postgres=# select datname, pid, usename, query from pg_stat_activity where
> query != '<IDLE>';
The query column now means "current or last query" --- there's a
separate column to check for the idle status. Those DEALLOCATEs
are evidently what your app does before going idle.
Nice feature. Thanks.
Craig
regards, tom lane