As Tom asked, why not use seqname.last_value?  Looking at your output:

        +   if (showSeq && !showTables)
        +       appendPQExpBuffer(&buf,
        +                     ",\n curval(c.oid) as \"%s\""
        +                     ",\n CASE curvalcheck(c.oid) WHEN '1' THEN '%s' 
WHEN '0' THEN '%s' END as \"%s\"",
        +                      _("value"),_("  ***"),_(""),_("Start from"));

What do you want to show that seqname.last_value doesn't give you? 
Curval?  I don't see that as useful for a psql display.  Now that I look
at the TODO item:

        o Have psql show current values for a sequence

It is confusing.  It means "the current values" for the sequence, not
"curval" for the sequence.  I don't even understand what your function
is returning.  Just stick to last_value, though I think
seqname.is_called might be what you were looking for.

What fields do we want to show?  Maybe the TODO item is not needed.  Is
this all we want to show?

        test=> \x
        Expanded display is on.

        test=> select * from xx;
        -[ RECORD 1 ]-+--------------------
        sequence_name | xx
        last_value    | 1
        increment_by  | 1
        max_value     | 9223372036854775807
        min_value     | 1
        cache_value   | 1
        log_cnt       | 32
        is_cycled     | f
        is_called     | t


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

Dhanaraj M wrote:
> Tom Lane wrote:
> 
> >Dhanaraj M <[EMAIL PROTECTED]> writes:
> >  
> >
> >>sorry for sending the old version in the previous mail . Here I attach 
> >>the recent version of the patch file.
> >>    
> >>
> >----------------------------------------------------------------------
> >  
> >
>      Surely this problem does not require adding any server-side code.
> 
> >Something like "select last_value from <seq>" would be more appropriate;
> >and it'd have some hope of working with back-version servers.
> >
> >Also, please use something more helpful than "***" as the column
> >header.  Your urge to add a footnote to explain it shows that you
> >didn't try hard enough to devise a good header to begin with.
> >
> >[ btw, both fmgroids.h and fmgrtab.c are generated files.  Patching
> >them is unnecessary and inappropriate. ]                     
> >
> ----------------------------------------------------------
> 
> The existing functions like lastval, currval dont provide the current 
> sequence value always.
> They work only if the sequence is already cached (nextval is called 
> atleast once for that sequence).
> Changing the internals of lastval/currval will give the solution. 
> However, I feel that the functionality change
> may affect the customers who use the current version.
> 
> Hence, I am sure that it requires the server side change. There are two 
> options here
> 1. Modifying the exisitng functions  (or) 2. adding new functions
> 
> 
> Thanks for your review
> Dhanaraj
> 
> 
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 5: don't forget to increase your free space map settings
> 

-- 
  Bruce Momjian   http://candle.pha.pa.us
  EnterpriseDB    http://www.enterprisedb.com

  + If your life is a hard drive, Christ can be your backup. +
Dhanaraj M wrote:
> Tom Lane wrote:
> 
> >Dhanaraj M <[EMAIL PROTECTED]> writes:
> >  
> >
> >>sorry for sending the old version in the previous mail . Here I attach 
> >>the recent version of the patch file.
> >>    
> >>
> >----------------------------------------------------------------------
> >  
> >
>      Surely this problem does not require adding any server-side code.
> 
> >Something like "select last_value from <seq>" would be more appropriate;
> >and it'd have some hope of working with back-version servers.
> >
> >Also, please use something more helpful than "***" as the column
> >header.  Your urge to add a footnote to explain it shows that you
> >didn't try hard enough to devise a good header to begin with.
> >
> >[ btw, both fmgroids.h and fmgrtab.c are generated files.  Patching
> >them is unnecessary and inappropriate. ]                     
> >
> ----------------------------------------------------------
> 
> The existing functions like lastval, currval dont provide the current 
> sequence value always.
> They work only if the sequence is already cached (nextval is called 
> atleast once for that sequence).
> Changing the internals of lastval/currval will give the solution. 
> However, I feel that the functionality change
> may affect the customers who use the current version.
> 
> Hence, I am sure that it requires the server side change. There are two 
> options here
> 1. Modifying the exisitng functions  (or) 2. adding new functions
> 
> 
> Thanks for your review
> Dhanaraj
> 
> 
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 5: don't forget to increase your free space map settings
> 

-- 
  Bruce Momjian   http://candle.pha.pa.us
  EnterpriseDB    http://www.enterprisedb.com

  + If your life is a hard drive, Christ can be your backup. +

---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings

Reply via email to