After restarting the server in another window, I was surprised that my command did not run in a transaction:
spc_test_scratch=# BEGIN; DROP VIEW IF EXISTS ptest_mip ; DROP VIEW rent_info; \i create.view.rent_info.sql
FATAL: terminating connection due to administrator command
server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request.
The connection to the server was lost. Attempting reset: Succeeded.
NOTICE: view "ptest_mip" does not exist, skipping
DROP VIEW
DROP VIEW
CREATE VIEW
spc_test_scratch=# commit;
WARNING: there is no transaction in progress
COMMIT
This seems like a pretty serious issue. My opinion is that psql should refuse to execute further commands on a line of input if any of them fails due to a terminated connection.
Moshe Jacobson Nead Werx, Inc. | Manager of Systems Engineering