Hello, Sam. Thanks for the answer. > This behavior seems to be what libpq exposes by default: > > http://www.postgresql.org/docs/current/static/libpq-exec.html The driver I was talking about isn't written in C and doesn't use libpq behind the scene like interfaces for Perl/Python/Tcl do, so what I see is more likely refers to how PostgreSQL itself executes queries. I haven't found a good explanation of this behaviour yet. > I always tend to bracket things in an explicit BEGIN+COMMIT, why > wouldn't you do this? Probably that is what I will end up with. But anyway I would like to know for sure what causes queries to be executed in "almost transactional" context. I should rejig my question: is this normal for a query made up from several commands to be completely discarded if an error occurs? If the answer is "no, it seems unusual" - I should write a bug report to the author of the driver. -- Sergey Samokhin -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general