Re: php with postgres

From: marcus(dot)boerger(at)t-online(dot)de (Marcus Brger)
To: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
Cc: Jan Wieck <JanWieck(at)Yahoo(dot)com>, ivan <iv(at)psycho(dot)pl>, Joe Conway <mail(at)joeconway(dot)com>, Dave Page <dpage(at)vale-housing(dot)co(dot)uk>, <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: php with postgres
Date: 2003-07-24 22:32:04
Message-ID: 6010331505.20030725003204@post.rwth-aachen.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hello Bruce,

Thursday, July 24, 2003, 11:57:39 PM, you wrote:

BM> Jan Wieck wrote:
>> Marcus B?rger wrote:
>> > ATM i have a patch doing the following:
>> > Connect:
>> > If PQprotocolVersion() is available and >= 3 PQparameterStatus() is available
>> > then i check the server version. Else i check the lib version (*).
>> > If the version to check is >= 7.2 ido one of the following:
>> > - If one of PQprotocolVersion() and PQtransactionStatus() is unavailable or
>> > protocol version < 3:
>> > "BEGIN;COMMIT;RESET ALL;"
>> >
>> > - If protocol version >= 3 and transaction status == PQTRANS_IDLE:
>> > "RESET ALL;"
>> > - If protocol version >= 3 and transaction status != PQTRANS_IDLE:
>> > "COMMIT;RESET ALL;"
>>
>> Shouldn't that be
>>
>> ROLLBACK; RESET ALL;
>>
>> and the other one "BEGIN; ROLLBACK; RESET ALL;" ?
>>
>> I don't want to have the possibly partial transaction from a crashed PHP
>> script to be committed by default. At least it would be a significant
>> difference between persistent and non-persistent connections, because we
>> rollback if we loose the connection.

BM> Right, as I just emailed. I wonder if we made the mistake of
BM> recommending BEGIN;COMMIT; to the PHP folks a while back, or whether they
BM> just did it themselves.

BM> I remember telling them they couldn't just do ROLLBACK because that
BM> would fill the logs, but I am not sure how they got BEGIN;COMMIT;
BM> rather than BEGIN;ROLLBACK. It just shows we need better communication
BM> between the communities.

Ok, i'd of course appreciate more eyes before my commit then (i need to become
more familiar with the whole postgres source). I've put three files online:
- the diff against current php haed
http://marcus-boerger.de/php/ext/pgsql/pgsql-persistent-20030725.diff.txt
- the complete new file
http://marcus-boerger.de/php/ext/pgsql/pgsql.c
- the parts relevant (request start/stop)
http://marcus-boerger.de/php/ext/pgsql/pgsql-request-start-stop.c


Best regards,
Marcus mailto:marcus(dot)boerger(at)post(dot)rwth-aachen(dot)de

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message The Hermit Hacker 2003-07-24 22:41:17 Re: v7.3.4 bundled ...
Previous Message Joe Conway 2003-07-24 22:31:48 array expression NULL fix [was: [HACKERS] odd behavior/possible bug]