Re: Query parser? - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Query parser?
Date
Msg-id 27785.1028125872@sss.pgh.pa.us
Whole thread Raw
In response to Query parser?  (Teodor Sigaev <teodor@stack.net>)
List pgsql-hackers
Teodor Sigaev <teodor@stack.net> writes:
> wow=# update \d dmoz
>           Table "dmoz"
>   Column |  Type   | Modifiers
> --------+---------+-----------
>   id     | integer |
>   name   | text    |
>   path   | ltree   |
> Indexes: dmoz_id_idx unique btree (id),
>           dmoz_path_idx gist ("path")

> wow-#
> wow-# ;
> ERROR:  parser: parse error at or near ""

> Is it normal behaviour? Its seems to me that isn't..

This is the same as\d dmozupdate ;

The behavior seems reasonable to me.  If psql's backslash commands
flushed the query input buffer, we couldn't have any commands for
query-buffer editing.

One thing that does seem a little odd is:

regression=# update;
ERROR:  parser: parse error at or near ";"
regression=# update
regression-# ;
ERROR:  parser: parse error at or near ""

Investigation shows that psql includes the ';' in what it sends to
the backend in the first case, but not in the second.  I'm not sure that
that rises to the level of a bug, but it seems odd.

It'd probably also be nice if the error message said
ERROR:  parser: parse error at or near end of input
rather than quoting a useless empty token.  I will see if I can make
that happen.
        regards, tom lane


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: WAL file location
Next
From: Tom Lane
Date:
Subject: Re: Rules and Views