pg.ddx.io  pgsql-interfaces@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Bruce Momjian <pgman@candle.pha.pa.us>
To: Peter Mount <peter@retep.org.uk>
Cc: Thies C. Arntzen <thies@digicol.de>
Cc: pgsql-jdbc@postgresql.org, PostgreSQL-interfaces <pgsql-interfaces@postgresql.org>
Subject: Re: PostgreSQL and PHP persistent connections
Date: Mon, 19 Mar 2001 17:01:26 -0500 (EST)
Message-ID: <200103192201.RAA05090@candle.pha.pa.us> (raw)
In-Reply-To: <5.0.2.1.0.20010207214024.009ee160@mail.retep.org.uk>

> At 14:12 07/02/01 -0500, Bruce Momjian wrote:
> >Thies, we talked at LinuxWorld about improving the reliability of
> >persistent PostgreSQL connections in PHP.
> >
> >I believe the problem is that persistent connections sometime do not
> >pass clean sessions because of open transactions and SET changes to the
> >session.
> >
> >We discussed using 'ROLLBACK' before passing a connection to a new user,
> >but the problem was that ROLLBACK with no open transaction causes a
> >server log error message.  We discussed adding 'ROLLBACK SILENT' to fix
> >this, but I believe a better, more portable solution is a simple "BEGIN
> >WORK;ROLLBACK".  This will do nothing if there is no open transaction,
> >and will ROLLBACK any open transaction.  I propose this be sent by PHP
> >as the first query when passing persistent connections.
> >
> >As far as SET changes, does anyone on the PostgreSQL interfaces list
> >have a suggestion on how to RESET all session parameters?  Seems we may
> >need to add this feature in to the backend.
> 
> Some Java apps utilise connection pools so they would possibly benefit. I 
> could add the BEGIN WORK;ROLLBACK; to JDBC.

I don't think that belongs in jdbc.  It is the connection pooling code
that should execute those statements before passing over a new
connection.  No reason to have it for all jdbc users.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026



view thread (17+ messages)  latest in thread

Message-ID: <200103192201.RAA05090@candle.pha.pa.us>
Permalink:  ../200103192201.RAA05090@candle.pha.pa.us/
Also on:    postgresql.org/message-id/200103192201.RAA05090@candle.pha.pa.us

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-interfaces@postgresql.org
  Cc: pgman@candle.pha.pa.us, peter@retep.org.uk, thies@digicol.de
  Subject: Re: PostgreSQL and PHP persistent connections
  In-Reply-To: <200103192201.RAA05090@candle.pha.pa.us>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox