On Mar 7, 2010, at 9:22 AM, Tom Lane wrote:
Magnus Hagander <mag...@hagander.net> writes:2010/3/6 Tom Lane <t...@sss.pgh.pa.us>:The analogy I was thinking about was psql -X, but I agree that it'snot 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).
Regards, David -- David Christensen End Point Corporation da...@endpoint.com
psql_process_multiple_files.patch
Description: Binary data
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers