ID: 26592 User updated by: aspire420 at hotpop dot com Reported By: aspire420 at hotpop dot com -Status: Feedback +Status: Closed Bug Type: Feature/Change Request Operating System: Linux RH 9.0 PHP Version: 4.3.4 New Comment:
Yes , You people are right Let me clarify : 1. PostgreSQL Version 7.4 > are by default in autocomit mode i.e the postgresql.conf entry has been removed to control this 2. Try doing this on < 7.4 cs=# set autocommit=off; SET This means Sucess But on 7.4 this fails 3. So whosoever wants to control the Autocomit feature would have to work with BEGIN AND COMMIT block What does this mean :- That all those application that where not using BEGIN and COMMIT block with PostgreSQL < 7.4 will easylu port to 7.4 But Those who were relying on postgresql.conf feature will have have to look around and introduce BEGIN and COMMIT block. -------------- If I am wrong then please take this bug as feature request Previous Comments: ------------------------------------------------------------------------ [2003-12-11 18:30:34] [EMAIL PROTECTED] I'm really not Postgresql expert (never used it actually :), but according to this documentation: http://www.postgresql.org/docs/7.4/static/sql-begin.html "By default (without BEGIN), PostgreSQL executes transactions in "autocommit" mode..." So if I understood that correctly, to turn it off you just need to begin your queries with 'BEGIN' and end with 'COMMIT' to "disable" autocommit? Now why would you need yet another php.ini option for this?! ------------------------------------------------------------------------ [2003-12-11 17:31:12] scott dot marlowe at ihs dot com QUOTE: What if my app has a multi-request series of action that should succeed or fail as a group? UNQUOTE: Then you need to enclose them in begin;/end; pairs. Simple enough. ------------------------------------------------------------------------ [2003-12-11 17:22:59] not at anumber dot com Autocommit considered harmful. The consumers of database resources within an application server should decide how transactional behaviour works, not the application server itself. This is analogous to the rule (now, too frequently broken) that MTAs should not mess with message bodies. What if my app has a multi-request series of action that should succeed or fail as a group? ------------------------------------------------------------------------ [2003-12-11 17:14:02] peter_e at gmx dot net This is actually a pretty bad idea. The autocommit setting should be controlled either by making it fixed at on or off for the interface, or by the client program itself (e.g., a "set autocommit on" function), but not by a global setting, because then you'll never be able to reconcile various prepackaged PHP applications. The excessive global-ness was the reason that the server-side autocommit setting was removed in the first place. ------------------------------------------------------------------------ [2003-12-11 16:37:03] aspire420 at hotpop dot com some configuration string would be better ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/26592 -- Edit this bug report at http://bugs.php.net/?id=26592&edit=1