I've always used -1-f - < file.sql. It is confusing that -1 doesn't warn you when it wont work though.
Sent from my iPhone On Jun 16, 2012, at 3:42 AM, Fabien COELHO <coe...@cri.ensmp.fr> wrote: > > Hello pgdev, > > (Second attempt) > > I've conducted a statistical study about PostgreSQL use in OSS. One of the > result is that quite a few projects have errors in their SQL setup scripts > which lead to some statements to be ignored, typically somme ADD CONSTRAINTS > which do not change the database schema from a functional point of view, or > syntactic errors (typically a mysql syntax...) that > result in missing tables, but which are not found if the application is not > fully tested. > > I think that there are two reasons why these errors are not caught by > application developers: > > (1) the default verbosity is set to "notice", which is much to high. The > users just get used to seeing a lot of messages on loading an sql script, and > to ignore them, so that errors are just hidden in the flow of notices. I > think that a better default setting would be "warnings", that is messages > that require some attention from the developer. > > (2) the default behavior of psql on errors is to keep going. Developers of > SQL script that are expected to work shoud be advised to: > - encourage application devs to set ON_ERROR_STOP and/or use a global > transaction in their script. > - provide a simple/short option to do that from the command line > basically that could be an enhanced "-1", NOT restricted > to "-f" but that would work on standard input as well. > > sh> psql -1 -f setup.sql # -1 does work here > sh> psql -1 < setup.sql # -1 does not apply to stdin stuff... > > > So I would suggest the following todos: > > 1 - change the default verbosity to "warning". > > 2 - change -1 to work on stdin as well instead of being ignored, > or provide another option that would do that. > > -- > Fabien Coelho - coe...@cri.ensmp.fr > > -- > Sent via pgsql-hackers mailing list (email@example.com) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-hackers -- Sent via pgsql-hackers mailing list (firstname.lastname@example.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers