On Sat, Jul 12, 2014 at 2:19 AM, Alvaro Herrera
<alvhe...@2ndquadrant.com> wrote:
> Sawada Masahiko wrote:
>
>> As you said, if line number reached UINT_MAX then I think that this
>> case is too strange.
>> I think INT_MAX is enough for line number.
>
> My point is not whether 2 billion is a better number than 4 billion as a
> maximum value.  My point is that wraparound of signed int is, I think,
> not even defined in C, whereas wraparound of unsigned int is well
> defined.  cur_line should be declared as unsigned int.  I don't trust
> that INT_MAX+2 arithmetic.
>
> Please don't use cur_line as a name for a global variable.  Something
> like PSQLLineNumber seems more appropriate if it's going to be exposed
> through prompt.h.  However, note that MainLoop() keeps state in local
> variables and notes that it is reentrant; what happens to your cur_line
> when a file is read by \i and similar?  I wonder if it should be part of
> PsqlScanStateData instead ...
>

Thank you for comment.
I restarted to make this patch again.

Attached patch is new version patch, and rebased.
pset structure has cur_lineno variable which shows current line number
as unsigned int64.

Regards,

-------
Sawada Masahiko

Attachment: psql-line-number_v6.patch
Description: Binary data

-- 
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