On 12/12/16 16:29, Robert Haas wrote:
> On Mon, Dec 12, 2016 at 10:02 AM, Craig Ringer
> <craig.ringer@2ndquadrant.com> wrote:
>> On 12 Dec. 2016 21:55, "Robert Haas" <robertmhaas@gmail.com> wrote:
>> On Sun, Dec 11, 2016 at 5:38 AM, Andrew Borodin <borodin@octonica.com>
>> wrote:
>>> 1. As far as I can see, we connot use COPY FROM STDIN in bg session?
>>> Since one of purposes is to orchestrate transactions, may be that
>>> would be valuable.
>>
>> A background worker has no client connection, so what would COPY FROM STDIN
>> do?
>>
>> It doesn't make sense. But a bgworker may well want to supply input to COPY.
>> A COPY FROM CALLBACK of COPY FROM FILEDESC or whatever.
>
> That's kinda weird, though. I mean, you don't need to go through all
> of the COPY code just to call heap_multi_insert() or whatever, do you?
> You can hand-roll whatever you need there.
>
You do if source of your data is already in COPY (or csv) format. I do
have similar usecase in logical replication followup patch that I plan
to submit to Jan CF, so maybe that will be interesting for this as well.
-- Petr Jelinek http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training &
Services