Question regarding DEALLOCATE pdo_stmt_00000001

Started by Laurentius Purbaalmost 12 years ago4 messagesgeneral
Jump to latest
#1Laurentius Purba
lpurba@sproutloud.com

Hello all,

I've been seeing lots of this processes in my database DEALLOCATE
pdo_stmt_00000001 with idle state.

Executing *select * from pg_stat_activity where query like
'DEALLOCATE%';*I can see some of them are idle for +/- 30 minutes, and
there is one idle
for 4 days.

When I checked one of the pid by executing *select * from pg_stat_activity
where pid = 63882;* (for example), after few minutes (can be longer), it
became *DISCARD ALL* and after that it was removed from pg_stat_activity.

I was wondering if this is the normal behavior, since some of them are idle
for +/- 30 minutes.

I am using PostgreSQL 9.3.2 and PgBouncer.

Any help is appreciated.

Regards,

-Laurentius

#2David G. Johnston
david.g.johnston@gmail.com
In reply to: Laurentius Purba (#1)
Re: Question regarding DEALLOCATE pdo_stmt_00000001

Laurentius Purba wrote

Hello all,

I've been seeing lots of this processes in my database DEALLOCATE
pdo_stmt_00000001 with idle state.

Executing *select * from pg_stat_activity where query like
'DEALLOCATE%';*I can see some of them are idle for +/- 30 minutes, and
there is one idle
for 4 days.

When I checked one of the pid by executing *select * from pg_stat_activity
where pid = 63882;* (for example), after few minutes (can be longer), it
became *DISCARD ALL* and after that it was removed from pg_stat_activity.

I was wondering if this is the normal behavior, since some of them are
idle
for +/- 30 minutes.

I am using PostgreSQL 9.3.2 and PgBouncer.

Any help is appreciated.

Regards,

-Laurentius

Yes.

9.3 - On an idle connection the value of query is the last executed query -
which in this case is some form session cleanup command before returning the
connection to the pool.

David J.

--
View this message in context: http://postgresql.1045698.n5.nabble.com/Question-regarding-DEALLOCATE-pdo-stmt-00000001-tp5804667p5804672.html
Sent from the PostgreSQL - general mailing list archive at Nabble.com.

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

#3Laurentius Purba
lpurba@sproutloud.com
In reply to: David G. Johnston (#2)
Re: Question regarding DEALLOCATE pdo_stmt_00000001

On Wed, May 21, 2014 at 7:50 PM, David G Johnston <
david.g.johnston@gmail.com> wrote:

Laurentius Purba wrote

Hello all,

I've been seeing lots of this processes in my database DEALLOCATE
pdo_stmt_00000001 with idle state.

Executing *select * from pg_stat_activity where query like
'DEALLOCATE%';*I can see some of them are idle for +/- 30 minutes, and
there is one idle
for 4 days.

When I checked one of the pid by executing *select * from

pg_stat_activity

where pid = 63882;* (for example), after few minutes (can be longer), it
became *DISCARD ALL* and after that it was removed from pg_stat_activity.

I was wondering if this is the normal behavior, since some of them are
idle
for +/- 30 minutes.

I am using PostgreSQL 9.3.2 and PgBouncer.

Any help is appreciated.

Regards,

-Laurentius

Yes.

9.3 - On an idle connection the value of query is the last executed query -
which in this case is some form session cleanup command before returning
the
connection to the pool.

David J.

--
View this message in context:
http://postgresql.1045698.n5.nabble.com/Question-regarding-DEALLOCATE-pdo-stmt-00000001-tp5804667p5804672.html
Sent from the PostgreSQL - general mailing list archive at Nabble.com.

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

​Thanks David.

So, it is a normal behavior in Postgres.

One more thing that bothers me, why this idle connection can be stayed idle
for 3 days. Is this a zombie process?​

-Laurentius

#4David G. Johnston
david.g.johnston@gmail.com
In reply to: Laurentius Purba (#3)
Re: Question regarding DEALLOCATE pdo_stmt_00000001

9.3 - On an idle connection the value of query is the last executed query
-
which in this case is some form session cleanup command before returning
the
connection to the pool.

So, it is a normal behavior in Postgres.

One more thing that bothers me, why this idle connection can be stayed
idle for 3 days. Is this a zombie process?​

​You said:​

​"I am using PostgreSQL 9.3.2 and PgBouncer."

​It is PgBouncer that is keeping these connections open and available for
immediate usage in its connection pool.

David J.