On Fri, Nov 4, 2011 at 9:48 AM, Magnus Hagander <magnus@hagander.net> wrote:
On Fri, Nov 4, 2011 at 14:42, Tom Lane <tgl@sss.pgh.pa.us> wrote: > Marti Raudsepp <marti@juffo.org> writes: >> While we're already breaking everything, we could remove the "waiting" >> column and use a state with value 'waiting' instead. > > -1 ... I think it's useful to see the underlying state as well as the > waiting flag. Also, this would represent breakage of part of the API > that doesn't need to be broken.
I guess with the changes that showed different thing like fastpath, that makes sense. But if we just mapped the states that are there today straight off, is there any case where waiting can be true, when we're either idle or idle in transaction? I think not..
Leave the waiting column and display 'WAITING' if st_watiting = 1 seems to be the clearest solution. I can see people getting confused by waiting = 't' and state='RUNNING'.
>> Also, returning these as text seems a little lame. Should there be an >> enum type for that? > > Perhaps, but we don't really use enum types in any other system views, > so inventing one here would be out of character.
Yeha, that seems inconsistent. Using a single character might work - but it's not particularly user-friendly to do that in the view itself.
I'll nuke the '<>', which is definitely an improvement, anything more complex seems like it'll require fairly wordy documentation.