[pgpool-general: 1673] Re: pgpool: connection cannot be released

Tatsuo Ishii ishii at postgresql.org
Thu May 2 14:19:47 JST 2013


> Hello All,
> 
> I forget to install regclass in postgresql server.
> 
> When I send a query which needs a function belonging to regclass (e.g.
> nextval), pgpool can receive a message from backend.
> The message looks like: cannot access file libdir/pgpool-regclass: no such
> file or directory.
> 
> When this happens, the connection from the client cannot be release.
> If I keep requesting the same query iteratively, the number of connections
> reaches the maximum value, and then all connections are occupied and no
> connection can be accepted.
> 
> I know that I should install regclass in postgresql server, but my question
> is: Is that correct for pgpool that the connection cannot be released after
> some error happen at backend?

Did not reproduce here. I renamed pgpool-regclass.so and ran simple
SELECT. Here are logs I observed but no lock up happens.

2013-05-02 14:08:24 LOG:   pid 4311: do_query: error message from backend: could not access file "$libdir/pgpool-regclass": No such file or directory
2013-05-02 14:08:24 LOG:   pid 4311: DB node id: 0 backend pid: 4335 statement: SELECT count(*) FROM pg_catalog.pg_class AS c, pg_attribute AS a WHERE c.relname = 'pg_class' AND a.attrelid = c.oid AND a.attname = 'relistemp'
2013-05-02 14:08:24 LOG:   pid 4311: DB node id: 0 backend pid: 4335 statement: SELECT count(*) FROM pg_class AS c, pg_namespace AS n WHERE c.relname = 'pg_class' AND c.relnamespace = n.oid AND n.nspname ~ '^pg_temp_'
2013-05-02 14:08:24 LOG:   pid 4311: DB node id: 0 backend pid: 4335 statement: SELECT count(*) FROM pg_catalog.pg_class AS c, pg_catalog.pg_attribute AS a WHERE c.relname = 'pg_class' AND a.attrelid = c.oid AND a.attname = 'relpersistence'
2013-05-02 14:08:24 LOG:   pid 4311: DB node id: 0 backend pid: 4335 statement: SELECT count(*) FROM pg_catalog.pg_class AS c WHERE c.oid = pgpool_regclass('pg_class') AND c.relpersistence = 'u'
2013-05-02 14:08:24 LOG:   pid 4311: DB node id: 0 backend pid: 4335 statement: select * from pg_class limit 1;
2013-05-02 14:11:23 LOG:   pid 4311: DB node id: 0 backend pid: 4335 statement:  DISCARD ALL
2013-05-02 14:11:23 LOG:   pid 4311: DB node id: 1 backend pid: 4336 statement:  DISCARD ALL
--
Tatsuo Ishii
SRA OSS, Inc. Japan
English: http://www.sraoss.co.jp/index_en.php
Japanese: http://www.sraoss.co.jp


More information about the pgpool-general mailing list