On Saturday, February 02, 2013 9:08 PM Robert Haas wrote:
On Fri, Feb 1, 2013 at 12:04 AM, Amit Kapila <amit.kap...@huawei.com> wrote:
>> I think user should be aware of effect before using SET commands, as these 
>> are used at various levels (TRANSACTION, SESSION, ...).

> Ideally, sure.  But these kinds of mistakes are easy to make.  

  You mean to say that after using SET Transaction, user can think below 
statements will
  use modified transaction property. But I think if user doesn't understand by 
default
  transaction will be committed after the statement execution, he might expect 
after 
  few statements he can rollback.

> That's why LOCK and DECLARE CURSOR already emit errors in this case - why
> should this one be any different?

IMO, I think error should be given when it is not possible to execute current 
statement.

Not only LOCK,DECLARE CURSOR but SAVEPOINT and some other statements also give 
the same error,
so if we want to throw error for such behavior, we can find all such similar 
statements 
(SET TRANSACTION, SET LOCAL, etc) and do it for all.

This can be helpful to some users, but not sure if such behavior (statement can 
be executed but it will not have any sense) 
can be always detectable and maintaible.

With Regards,
Amit Kapila.


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to