Thread
-
patch for preventing the specification of conflicting transaction read/write options
Chetan Suttraway <chetan.suttraway@enterprisedb.com> — 2012-02-07T13:02:18Z
Hi, This is regarding the TODO item: "Prevent the specification of conflicting transaction read/write options" listed at: http://wiki.postgresql.org/wiki/Todo The issue is : SET TRANSACTION read only read write read only; The fix involved iteration over transaction_mode_list and checking for duplicate entries. The patch is based on suggestions mentioned in message: http://archives.postgresql.org/pgsql-hackers/2009-01/msg00692.php As per this, the patch does not throw any error for the first test case mentioned above. It throws error only in case of conflicting modes. For ex: postgres=# SET TRANSACTION read only read only; SET postgres=# SET TRANSACTION read only read write; ERROR: conflicting options LINE 1: SET TRANSACTION read only read write; ^ Below are basic unit test logs: postgres=# SET TRANSACTION ISOLATION LEVEL serializable ISOLATION LEVEL serializable; SET postgres=# SET TRANSACTION ISOLATION LEVEL serializable ISOLATION LEVEL repeatable read; ERROR: conflicting options LINE 1: SET TRANSACTION ISOLATION LEVEL serializable ISOLATION LEVEL... postgres=# SET TRANSACTION DEFERRABLE DEFERRABLE; SET postgres=# SET TRANSACTION DEFERRABLE NOT DEFERRABLE; ERROR: conflicting options LINE 1: SET TRANSACTION DEFERRABLE NOT DEFERRABLE; ^ postgres=# START TRANSACTION read only, read only; START TRANSACTION postgres=# rollback; ROLLBACK postgres=# START TRANSACTION read only, read write; ERROR: conflicting options LINE 1: START TRANSACTION read only, read write; postgres=# rollback; ROLLBACK ^ postgres=# BEGIN TRANSACTION ISOLATION LEVEL serializable, ISOLATION LEVEL serializable; BEGIN postgres=# rollback; ROLLBACK postgres=# BEGIN TRANSACTION ISOLATION LEVEL serializable, ISOLATION LEVEL repeatable read; ERROR: conflicting options LINE 1: BEGIN TRANSACTION ISOLATION LEVEL serializable, ISOLATION LE... ^ Please pass on any inputs on the patch. Regards, Chetan -- EnterpriseDB Corporation The Enterprise PostgreSQL Company Website: www.enterprisedb.com EnterpriseDB Blog : http://blogs.enterprisedb.com Follow us on Twitter : http://www.twitter.com/enterprisedb -
Re: patch for preventing the specification of conflicting transaction read/write options
Kevin Grittner <kevin.grittner@wicourts.gov> — 2012-02-07T15:14:02Z
Chetan Suttraway <chetan.suttraway@enterprisedb.com> wrote: > This is regarding the TODO item: > "Prevent the specification of conflicting transaction read/write > options" > > listed at: > http://wiki.postgresql.org/wiki/Todo Thanks for chipping away at items on the list. > Please pass on any inputs on the patch. Right now we want people focusing on fixing bugs and reviewing patches submitted by the start of the current CommitFest. Please add this to the open CF so we don't lose track of it. -Kevin
-
Re: patch for preventing the specification of conflicting transaction read/write options
Chetan Suttraway <chetan.suttraway@enterprisedb.com> — 2012-02-08T06:39:34Z
On Tue, Feb 7, 2012 at 8:44 PM, Kevin Grittner <Kevin.Grittner@wicourts.gov>wrote: > Chetan Suttraway <chetan.suttraway@enterprisedb.com> wrote: > > > This is regarding the TODO item: > > "Prevent the specification of conflicting transaction read/write > > options" > > > > listed at: > > http://wiki.postgresql.org/wiki/Todo > > Thanks for chipping away at items on the list. > > > Please pass on any inputs on the patch. > > Right now we want people focusing on fixing bugs and reviewing > patches submitted by the start of the current CommitFest. Please > add this to the open CF so we don't lose track of it. > > -Kevin > Sure. Thanks! -Chetan -- EnterpriseDB Corporation The Enterprise PostgreSQL Company Website: www.enterprisedb.com EnterpriseDB Blog : http://blogs.enterprisedb.com Follow us on Twitter : http://www.twitter.com/enterprisedb