Re: [PHP-PEAR] possible bug in DB/pgsql.php

[email protected]
Newsgroups php.pear
Message-ID <3A917CDE.16354.C624BB9@localhost>
On 19 Feb 2001, at 13:27, Stig S. Bakken wrote:

> [email protected] wrote:
> > 
> > Hmm, maybe I'm straying too far...I'm not too content of my own
> > suggestions. Your turn...
> 
> I've implemented your suggestion now and added a transaction test for
> pgsql as well.  Could you give it a shot and see if it solves your
> problem?
> 
Hmm. Sadly, my work took out whole afternoon and I didn't have 
the time to do a real test of the source, so I just v-grepped it.
I'll do a real benchmark ASAP... for the moment, I'm still wondering 
if it could work without storing somewhere the connection id. If you 
have more than one connection in a page, how do you recognize 
when one has an open transaction or not? 

PS: However, there was an error in the way that PHP handled 
PGsql's permanent connections that could lead to serious troubles. 

In Pg main list they said the fix it's in the cvs, otherway this is the 
relevant part:

> > a bunch of scripts that randomly give errors "Warning: <some 
number> is
> > not a valid PostgreSQL link resource in <file>".  I have noticed 
this
> > since moving to PHP4, and it appears to only be random (it 
just started
> > happening on a website that previously worked for months 
without
> > problems -- only change to system was increasing 
kern.maxfiles to 8192).
>
>     i've commited a fix for this to PHP 4 CVS yesterday.
>
>     if you don't want to live on the "bleeding edge" (use PHP
>     from CVS) just replace the php_pgsql_set_default_link
>     function in pgsql.c against this one and you're all-set!
>
>     regards,
>     tc
>
> static void php_pgsql_set_default_link(int id)
> {
>     PGLS_FETCH();
>
>     if ((PGG(default_link) != -1) && (PGG(default_link) != id)) {
>         zend_list_delete(PGG(default_link));
>     }
>
>     if (PGG(default_link) != id) {
>         PGG(default_link) = id;
>         zend_list_addref(id);
>     }
> }
>
> >


/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/

Fabrizio Ermini               Alternate E-mail:
C.so Umberto, 7               [email protected]
loc. Meleto Valdarno          Mail on GSM: (keep it short!)
52020 Cavriglia (AR)          [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.