Re: Explicit psqlrc - Mailing list pgsql-hackers

From Robert Haas
Subject Re: Explicit psqlrc
Date
Msg-id 603c8f071003080640r6c0a91a1r887d9277be2c8240@mail.gmail.com
Whole thread Raw
In response to Re: Explicit psqlrc  (David Christensen <david@endpoint.com>)
List pgsql-hackers
On Mon, Mar 8, 2010 at 1:39 AM, David Christensen <david@endpoint.com> wrote:
>
> On Mar 7, 2010, at 9:22 AM, Tom Lane wrote:
>
>> Magnus Hagander <magnus@hagander.net> writes:
>>>
>>> 2010/3/6 Tom Lane <tgl@sss.pgh.pa.us>:
>>>>
>>>> The analogy I was thinking about was psql -X, but I agree that it's
>>>> not obvious why this shouldn't be thought of as an additional -f file.
>>
>>> Uh, I don't follow. When we use -f, we'll run the script and then
>>> exit. The whole point is to run it and *not* exit, since you are
>>> normally using it to set up the environment in psql.
>>
>> If we were going to support multiple -f options, it would be sensible
>> to interpret "-f -" as "read from stdin until EOF".  Then you could
>> interleave prepared scripts and stdin, which could be pretty handy.
>> The default behavior would be equivalent to a single instance of "-f -",
>> and what you are looking for would be "-X -f substitute-psqlrc -f -".
>
> Here's an initial stab at supporting multiple -f's (not counting the
> interpretation of "-f -" as STDIN).  There are also a few pieces that are up
> for interpretation, such as the propagation of the return value of the
> MainLoop().  Also, while this patch supports the single-transaction mode, it
> does so in a way that will break if one of the scripts include explicit
> BEGIN/COMMIT statements (although it is no different than the existing code
> in this regard).

I have added to this to the next CommitFest.

...Robert


pgsql-hackers by date:

Previous
From: Tim Bunce
Date:
Subject: Re: Safe security
Next
From: Robert Haas
Date:
Subject: Re: SQL compatibility reminder: MySQL vs PostgreSQL