At Tue, 20 Oct 2020 04:23:12 +0000, "tsunakawa.ta...@fujitsu.com" <tsunakawa.ta...@fujitsu.com> wrote in > From: Kyotaro Horiguchi <horikyota....@gmail.com> > > > Furthermore, FDW is not cancellable in general. So, I don't see a point > > > in > > trying hard to make only commit be cancelable. > > > > I think that it is quite important that operators can cancel any > > process that has been stuck for a long time. Furthermore, postgres_fdw > > is more likely to be stuck since network is involved so the usefulness > > of that feature would be higher. > > But lower than practical performance during normal operation. > > BTW, speaking of network, how can postgres_fdw respond quickly to cancel > request when libpq is waiting for a reply from a down foreign server? Can > the user continue to use that session after cancellation?
It seems to respond to a statement-cancel signal immediately while waiting for a coming byte. However, seems to wait forever while waiting a space in send-buffer. (Is that mean the session will be stuck if it sends a large chunk of bytes while the network is down?) After receiving a signal, it closes the problem connection. So the local session is usable after that but the fiailed remote sessions are closed and created another one at the next use. regards. -- Kyotaro Horiguchi NTT Open Source Software Center