Re: IDLE in transaction introspection - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: IDLE in transaction introspection
Date
Msg-id 201111101833.pAAIXpc01750@momjian.us
Whole thread Raw
In response to Re: IDLE in transaction introspection  (Scott Mead <scottm@openscg.com>)
Responses Re: IDLE in transaction introspection
List pgsql-hackers
Scott Mead wrote:
> On Wed, Nov 2, 2011 at 4:12 AM, Albe Laurenz <laurenz.albe@wien.gv.at>wrote:
> 
> > Andrew Dunstan wrote:
> > > On 11/01/2011 09:52 AM, Tom Lane wrote:
> > >> I'm for just redefining the query field as "current or last
> > >> query".
> > >
> > > +1
> > >
> > >> I could go either way on whether to rename it.
> > >
> > > Rename it please. "current_query" will just be wrong. I'd be inclined
> > > just to call it "query" or "query_string" and leave it to the docs to
> > > define the exact semantics.
> >
> > +1 for renaming, +1 for a state column.
> > I think it is overkill to keep a query history beyond that -- if you
> > want that,
> > you can resort to the log files.
> >
> >
> ISTM that we're all for:
> 
>    creating a new column: state
>    renaming current_query => query
> 
>    State will display <RUNNING>, <IDLE>, <IDLE> in transaction, etc...
>    query will display the last query that was executed.
> 
> I've written this up in the attached patch, looking for feedback. (NB:
> Originally I was using 9.1.1 release, I just did a git clone today to
> generate this).

It might be cleaner to use booleans:
active:         t/fin transaction: t/f

or maybe instead of 'active':
idle:        t/fin transaction: t/f

That avoids the magic string values for the state column.  Those are
much easier to query against too:
WHERE NOT idle;

--  Bruce Momjian  <bruce@momjian.us>        http://momjian.us EnterpriseDB
http://enterprisedb.com
 + It's impossible for everything to be true. +


pgsql-hackers by date:

Previous
From: Scott Mead
Date:
Subject: Re: IDLE in transaction introspection
Next
From: Tom Lane
Date:
Subject: Re: pg_dump 9.1.1 hanging (collectSecLabels gets 0 labels)