Bug fix for psql's meta-command \ev

Поиск
Список
Период
Сортировка
От Ryoga Yoshida
Тема Bug fix for psql's meta-command \ev
Дата
Msg-id 01419622d84ef093fd4fe585520bf03c@oss.nttdata.com
обсуждение исходный текст
Ответы Re: Bug fix for psql's meta-command \ev  (Michael Paquier <michael@paquier.xyz>)
Re: Bug fix for psql's meta-command \ev  (Kyotaro Horiguchi <horikyota.ntt@gmail.com>)
Список pgsql-hackers
Hi,

When a table name is specified as the first argument of \ev 
meta-command, it reports the error message, the prompt string becomes 
"-#" and then the following valid query fails because the psql's query 
buffer contains the garbage string generated by failure of \ev. Please 
see the following example.
=# \ev t
"public.t" is not a view

-# SELECT * FROM t;
ERROR:  syntax error at or near "public" at character 1
STATEMENT:  public.t AS

    SELECT * FROM t;
I think this is a bug in psql's \ev meta-command. Even when \ev fails, 
it should not leave the garbage string in psql's query buffer and the 
following query should be completed successfully.
This problem can be resolved by resetting the query buffer on error. You 
can see the attached source code. After that, it will result in output 
like the following:
=# \ev t
"public.t" is not a view
=# SELECT * FROM t;
  i
---
  1
  2
(2 rows)

Ryoga Yoshida
Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Andy Fan
Дата:
Сообщение: Re: Extract numeric filed in JSONB more effectively
Следующее
От: Kyotaro Horiguchi
Дата:
Сообщение: Re: bug fix and documentation improvement about vacuumdb