Skip site navigation (1) Skip section navigation (2)

Re: BUG #1118: Misleading Commit message

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: elein <elein(at)varlena(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, elein <elein(at)norcov(dot)com>,pgsql-bugs(at)postgresql(dot)org
Subject: Re: BUG #1118: Misleading Commit message
Date: 2004-07-09 14:15:35
Message-ID: 200407091415.i69EFav01287@candle.pha.pa.us (view raw or flat)
Thread:
Lists: pgsql-bugspgsql-hackers
Do we want to add this to TODO:

	*  Issue an extra message when COMMIT completes an failed transaction

---------------------------------------------------------------------------

elein wrote:
> 
> 
> 
> On Sun, Mar 28, 2004 at 10:23:26AM -0500, Tom Lane wrote:
> > Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> writes:
> > > PostgreSQL Bugs List wrote:
> > >> In a block transaction, whether or not there were errors in the transaction 
> > >> issuing a commit; returns a COMMIT confirmation. 
> > 
> > > Uh, the tag indicates the COMMIT completed, not that it was a success.
> > 
> > The current philosophy on command tags is "the tag is the same as the
> > command actually issued".  However we are talking about breaking that
> > rule for EXECUTE, and if we do that, it's hard to say that we should
> > continue to enforce the rule for COMMIT.  It would clearly be useful
> > for a COMMIT that ends a failed transaction to report ROLLBACK instead.
> > 
> > > If we throw an error on a COMMIT, people willl think we did not close
> > > the transacction,
> > 
> > ... which we wouldn't have.  That won't work.
> > 
> > > and if we return a ROLLBACK, they will think they issued a rollback.
> > 
> > Which, in effect, is what they did.  Is it likely that this would break
> > any clients?  The intention of the current design rule is that clients
> > can match the tag against the command they issued, but I don't know of
> > any client code that actually does that.
> > 
> > In any case, we already have some inconsistencies:
> > 
> > regression=# begin;
> > BEGIN
> > regression=# end;
> > COMMIT
> > regression=# begin;
> > BEGIN
> > regression=# abort;
> > ROLLBACK
> > regression=#
> > 
> > so it seems that in some cases we're already following a rule more like
> > "the tag is the same as the command actually *executed*".
> > 
> > I started out not wanting to make this change either, but the more
> > I think about it the harder it is to hold that position.
> > 
> > 			regards, tom lane
> > 
> > ---------------------------(end of broadcast)---------------------------
> > TIP 3: if posting/reading through Usenet, please send an appropriate
> >       subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
> >       message can get through to the mailing list cleanly
> 
> The message could be something like:
> COMMIT: Transaction rolled back due to errors
> 
> That way, it would reflect both the command and the action.
> But I am concerned about the information rather than
> the exact message if someone has better ideas.
> 
> My reason for submitting the bug was as Tom stated:
> > It would clearly be useful
> > for a COMMIT that ends a failed transaction to report ROLLBACK instead.
> 
> A commit that fails does not commit. It rolls back.  
> 
> In general, this would make it friendlier for new people and
> space cadets that don't notice the last statement failed :-)
> 
> Elein
> elein(at)varlena(dot)com
> 

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman(at)candle(dot)pha(dot)pa(dot)us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

In response to

pgsql-hackers by date

Next:From: Bruce MomjianDate: 2004-07-09 14:16:29
Subject: Re: [BUGS] BUG #1118: Misleading Commit message
Previous:From: Rod TaylorDate: 2004-07-09 14:14:11
Subject: Re: User Quota Implementation

pgsql-bugs by date

Next:From: Bruce MomjianDate: 2004-07-09 14:16:29
Subject: Re: [BUGS] BUG #1118: Misleading Commit message
Previous:From: Markus BertheauDate: 2004-07-09 14:04:30
Subject: compile error in contrib/xml2

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group