From: | Will Leinweber <will(at)heroku(dot)com> |
---|---|
To: | Ross Reedstrom <reedstrm(at)rice(dot)edu> |
Cc: | David Fetter <david(at)fetter(dot)org>, Gurjeet Singh <singh(dot)gurjeet(at)gmail(dot)com>, Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov>, Alvaro Herrera <alvherre(at)commandprompt(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: feature request: auto savepoint for interactive psql when in transaction. |
Date: | 2011-11-14 22:45:04 |
Message-ID: | CAL8LqZTvyqEttwe8-5dCogduJAo5mnj-qmwHGydcB_BG-=6XFQ@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
My coworker Dan suggested that some people copy and paste scripts. However
I feel that that is an orthogonal problem and if there is a very high rate
of input psql should detect that and turn interactive off. And I
still strongly feel that on_error_rollback=interactive should be the
default.
Until then, I've included this as a PSA at the start of any postgres talks
I've given, because it's simply not widely known.
On Mon, Nov 14, 2011 at 2:19 PM, Ross Reedstrom <reedstrm(at)rice(dot)edu> wrote:
> On Wed, Sep 28, 2011 at 11:47:51AM -0700, David Fetter wrote:
> > On Wed, Sep 28, 2011 at 02:25:44PM -0400, Gurjeet Singh wrote:
> > > On Wed, Sep 28, 2011 at 1:51 PM, Kevin Grittner <
> Kevin(dot)Grittner(at)wicourts(dot)gov
> > > > wrote:
> > >
> > > > Alvaro Herrera <alvherre(at)commandprompt(dot)com> wrote:
> > > >
> > > > > See ON_ERROR_ROLLBACK
> > > > > http://www.postgresql.org/docs/9.0/static/app-psql.html
> > > >
> > > > I had missed that. Dang, this database product is rich with nice
> > > > features! :-)
> > > >
> > >
> > > +1
> > >
> > > I would like it to be on/interactive by default, though.
> >
> > You can have it by putting it in your .psqlrc.
> >
> > If we were just starting out, I'd be all for changing the defaults,
> > but we're not. We'd break things unnecessarily if we changed this
> > default.
> >
>
> This discussion died out with a plea for better documentation, and perhaps
> some
> form of discoverability. I've scanned ahead and see no further discussion.
> However, I'm wondering, what use-cases would be broken by setting the
> default
> to 'interactive'? Running a non-interactive script by piping it to psql?
> Reading the code, I see that case is covered: the definition of
> 'interactive'
> includes both stdin and stdout are a tty, and the source of commands is
> stdin.
> Seems this functionality appeared in version 8.1. Was there discussion re:
> making it the default at that time? I'm all for backward compatibility,
> but I'm
> having trouble seeing what would break.
>
> I see that Peter blogged about this from a different angle over a year ago
> (
> http://petereisentraut.blogspot.com/2010/03/running-sql-scripts-with-psql.html
> )
> which drew a comment from Tom Lane that perhaps we need a better/different
> tool
> for running scripts. That would argue the defaults for psql proper should
> favor
> safe interactive use (autocommit off, anyone?) Peter mentioned the
> traditional
> method unix shells use to handle this: different config files are read for
> interactive vs. non-interactive startup. Seems we have that, just for the
> one
> setting ON_ERROR_ROLLBACK.
>
> Ross
> --
> Ross Reedstrom, Ph.D. reedstrm(at)rice(dot)edu
> Systems Engineer & Admin, Research Scientist phone: 713-348-6166
> Connexions http://cnx.org fax: 713-348-3665
> Rice University MS-375, Houston, TX 77005
> GPG Key fingerprint = F023 82C8 9B0E 2CC6 0D8E F888 D3AE 810E 88F0 BEDE
>
From | Date | Subject | |
---|---|---|---|
Next Message | Bruce Momjian | 2011-11-14 22:46:18 | Re: Detach/attach database |
Previous Message | Martijn van Oosterhout | 2011-11-14 22:44:20 | Re: strict aliasing (was: const correctness) |