Re: psql: show only failed queries - Mailing list pgsql-hackers

From Fabrízio de Royes Mello
Subject Re: psql: show only failed queries
Date
Msg-id CAFcNs+qeA3ESDY530+K_qnvv-ohREhEWe81EoiR7aFZHpu1Kow@mail.gmail.com
Whole thread Raw
In response to psql: show only failed queries  (Pavel Stehule <pavel.stehule@gmail.com>)
Responses Re: psql: show only failed queries  (Pavel Stehule <pavel.stehule@gmail.com>)
List pgsql-hackers



On Sat, Mar 1, 2014 at 8:01 AM, Pavel Stehule <pavel.stehule@gmail.com> wrote:
>
> Hello
>
> I was asked, how can be showed only failed queries in psql.
>
> I am thinking, so it is not possible now. But implementation is very simple
>
> What do you think about it?
>
> bash-4.1$ psql postgres -v ECHO=error -f data.sql
> INSERT 0 1
> Time: 27.735 ms
> INSERT 0 1
> Time: 8.303 ms
> psql:data.sql:3: ERROR:  value too long for type character varying(2)
> insert into foo values('bbb');
> Time: 0.178 ms
> INSERT 0 1
> Time: 8.285 ms
> psql:data.sql:5: ERROR:  value too long for type character varying(2)
> insert into foo values('ssssss');
> Time: 0.422 ms
>

The patch works fine, but I think we must add some prefix to printed query. Like that:

fabrizio=# \set ECHO error
fabrizio=# insert into foo values ('XXX');
ERROR:  value too long for type character varying(2)
DETAIL:  insert into foo values ('XXX');

or

fabrizio=# \set ECHO error
fabrizio=# insert into foo values ('XXX');
ERROR:  value too long for type character varying(2)
QUERY:  insert into foo values ('XXX');

This may help to filter the output with some tool like 'grep'.

Regards,

--
Fabrízio de Royes Mello
Consultoria/Coaching PostgreSQL
>> Timbira: http://www.timbira.com.br
>> Blog sobre TI: http://fabriziomello.blogspot.com
>> Perfil Linkedin: http://br.linkedin.com/in/fabriziomello
>> Twitter: http://twitter.com/fabriziomello

pgsql-hackers by date:

Previous
From: Peter Geoghegan
Date:
Subject: Re: jsonb and nested hstore
Next
From: "Wang, Jing"
Date:
Subject: Re: pg_dump reporing version of server & pg_dump as comments in the output