On 2016/03/24 11:14, Michael Paquier wrote:
> On Wed, Mar 23, 2016 at 10:05 PM, Thom Brown <thom@linux.com> wrote:
>> I've noticed that you now can't cancel a query if there's DML pushdown
>> to a foreign server. This previously worked while it was sending
>> individual statements as it interrupted and rolled it back.
>>
>> Here's what the local server sees when trying to cancel:
>>
>> # DELETE FROM remote.contacts;
>> ^CCancel request sent
>> DELETE 5000000
>>
>> This should probably be fixed.
> Looking at what has been committed, execute_dml_stmt is using
> PQexecParams, so we'd want to use an asynchronous call and loop on
> PQgetResult with CHECK_FOR_INTERRUPTS() in it.
Will fix.
Thanks for the report, Thom! Thanks for the advice, Michael!
Best regards,
Etsuro Fujita