So it's safe to say that there is not a large user base of people pairing pgpool with java?

On 10/17/2011 08:21 PM, Tatsuo Ishii 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
[email protected]
http://pgfoundry.org/mailman/listinfo/pgpool-general

Reply via email to