Re: problem--pg_connect() and odbc_connect() return the same connection

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



pntil@xxxxxxxxxxx wrote:
> I was having problems because pg_connect() (and odbc_connect()), when 
> given the same connection credentials, return the SAME IDENTICAL 
> connection. 
> 
> Given this, it is difficult to write functions that use a database 
> connection but do not have  unwanted side effects. 
> ...
> It seems to me that much of the transaction handling, and the (ACIDity 
> therein) of postgresql is lost because of this "feature" that multiple 
> connection requests with the same parameters return the same exact 
> connection.
> 
> How do you web developers out there deal with this?  Do you have some 
> elegant workaround for this?
> 
> Also, is there anyone on this list who works on the PHP pg_xxxxx 
> extension?   Has this issue ever been brought up before?

I think in many cases we wouldn't want a single script to open multiple
connections to PostgreSQL due to the per-connection overhead and limited
number of backends available.  But if you really want to, there is a way
with the PostgreSQL extension:

   $conn_handle = pg_connect($connstring, PGSQL_CONNECT_FORCE_NEW);

This gives you a fresh new connection regardless of any existing connection
which used the same connection info string $connstring.  This feature was
added in PHP-4.3.0, so make sure you are running at least that version. It
hasn't really made the documentation, so it might be considered experimental.
But it works.


[Index of Archives]     [Postgresql General]     [Postgresql Admin]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Databases]     [Yosemite Backpacking]     [Postgresql Jobs]

  Powered by Linux