Re: psql swallowed my "BEGIN;" on reset... user beware?

From: Merlin Moncure <mmoncure(at)gmail(dot)com>
To: Moshe Jacobson <moshe(at)neadwerx(dot)com>
Cc: Ken Tanzer <ken(dot)tanzer(at)gmail(dot)com>, PG-General Mailing List <pgsql-general(at)postgresql(dot)org>
Subject: Re: psql swallowed my "BEGIN;" on reset... user beware?
Date: 2013-09-30 16:06:55
Message-ID: CAHyXU0wV0xLOwY-bsE95maWAxgoPO4zEy4W-q0YU=Q4tBm1b7Q@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Mon, Sep 30, 2013 at 10:49 AM, Moshe Jacobson <moshe(at)neadwerx(dot)com> wrote:
>
> On Sun, Sep 29, 2013 at 2:18 AM, Ken Tanzer <ken(dot)tanzer(at)gmail(dot)com> wrote:
>>
>> 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.

you can control this with on error stop directive -- add it to your
psqlrc if you want the setting to persist.

merlin

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Alvaro Herrera 2013-09-30 16:12:20 Re: Fwd: Help on ṕerformance
Previous Message Moshe Jacobson 2013-09-30 15:49:29 Re: psql swallowed my "BEGIN;" on reset... user beware?