[Pgpool-general] Trouble with the JDBC drivers...

Toshihiro Kitagawa kitagawa at sraoss.co.jp
Thu Oct 20 09:30:20 UTC 2011


Hi Bryan,

>    Caused by: org.postgresql.util.PSQLException: ERROR: prepared
>    statement "S_18" does not exist

I guess this problem is a known bug which was fixed in 3.1.

  - Fix bug which cannot use the cursors of JDBC driver on standby
    node. The transaction commands come to be sent to all nodes by
    this fix in master/slave mode(Kitagawa)

Does the error occur in 3.1?

If the error is caused by the bug, it should be solved by
setting load_balance_mode to off.

Regards,

-- 
Toshihiro Kitagawa
SRA OSS, Inc. Japan

On Tue, 18 Oct 2011 09:21:17 +0900 (JST)
Tatsuo Ishii <ishii at sraoss.co.jp> wrote:

> Takahiro,
> 
> Any comment on this?
> --
> Tatsuo Ishii
> SRA OSS, Inc. Japan
> English: http://www.sraoss.co.jp/index_en.php
> Japanese: http://www.sraoss.co.jp
> 
> > Greetings all, I'm new to the list.
> > 
> > I've been experimenting with pgpool since the 3.0.1 release.
> > We have never implemented this in production -- largely because of the
> > errors we've found during testing.
> > 
> > 
> > We have intermittent failures with pgpool-II when using the JDBC
> > driver.
> > 
> > I'm currently using:
> >    A brand-new build of pgpool-II version 3.1.
> >    postgresql 9.0-801-jdbc4 version of the JDBC drivers.
> > 
> > My testing server backends are:
> >    Postgres 9.0.4, UTF8, on 32bit Ubuntu 10.04.
> >    They are configured for streaming replication (which is working very
> >    well).
> > 
> > My java application is making use of the standard JDBC non-pooling
> > data source (with autoCommit = true) to create connections on multiple
> > threads.
> > 
> > Our production configuration currently looks like this:
> >   Application -> C3P0 (Connection Pool) -> JDBC Driver -> master
> >   database
> > 
> > I have tested the following configurations in my test environment:
> >   Application -> C3P0 -> JDBC Driver -> pgpool-II -> database(s)
> >   Application -> JDBC Driver -> pgpool-II -> database(s)
> > 
> > In both setups, I continue to have issues with prepared statements and
> > 'portals' (I think) which the JDBC driver reports as non-existent.
> > 
> > I have set prepareThreshold=0 on the JDBC driver, to disable statement
> > caching, and still get these errors.
> > 
> > Occasionally, during testing, we see messages that look like this:
> > 
> >    Caused by: org.postgresql.util.PSQLException: ERROR: prepared
> >    statement "S_18" does not exist
> > 
> >         at
> >         org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2102)
> > 
> >         at
> >         org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1835)
> > 
> >         at
> >         org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)
> > 
> >         at
> >         org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:500)
> > 
> >         at
> >         org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:388)
> > 
> >         at
> >         org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:273)
> > 
> > This causes our application to (obviously) have issues.
> > 
> > Is there a known good configuration for the JDBC driver & data sources
> > that should make this work reliably?
> > 
> > Attached is my pgpool configuration.
> > 
> > Thank you for any help / suggestions!
> > 
> > Regards,
> >  -Bryan
> _______________________________________________
> Pgpool-general mailing list
> Pgpool-general at pgfoundry.org
> http://pgfoundry.org/mailman/listinfo/pgpool-general
> 



More information about the Pgpool-general mailing list