Re: Switching from OSX to Linux, multi-line queries in \copy don't work anymore

From: Craig Ringer <ringerc(at)ringerc(dot)id(dot)au>
To: Ryan Kelly <rpkelly22(at)gmail(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Switching from OSX to Linux, multi-line queries in \copy don't work anymore
Date: 2012-07-27 13:49:06
Message-ID: 50129C52.2070809@ringerc.id.au
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 07/27/2012 09:28 PM, Ryan Kelly wrote:
> I recently switched from OSX to Linux and \copy in psql no longer
> accepts multi-line queries. For instance:
>
> \copy (
> select
> *
> from
> pg_settings
> ) to '/tmp/settings.csv' with csv header
>
> This works fine on OSX. On Linux I get:
> \copy: parse error at end of line
>
> Am I missing something here?
A wild guess: I'd say this is a consequence of the fact that psql on OS
X uses libedit, on Linux it uses readline.

Personally I had no idea that multiline \copy was possible at all. I've
always though the way backslash commands are EOL-terminated while
everything else is semicolon terminated is a bit of a wart, though.

I don't have an answer for you. Using the --no-readline argument makes
no difference on my 9.1.4 here. This may just be an area where libedit
is smarter than readline - or it might be that I'm totally wrong and the
real issue is something else entirely.

Thanks for making the effort to produce a good post with all the
detailed version info, exact error text, etc.

--
Craig Ringer

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Mark Morgan Lloyd 2012-07-27 14:06:01 Re: Switching from OSX to Linux, multi-line queries in \copy don't work anymore
Previous Message Ryan Kelly 2012-07-27 13:28:00 Switching from OSX to Linux, multi-line queries in \copy don't work anymore