>> It is not because of the locks. There is only running transaction (and it
>> got every locks). Not sure why the backend stucks there, seems it doesn't
>> aware of the broken client. In normal situations, if you killed a client,
>> then the server will print something like "could not receive data from
>> client" then exit the backend.
I tried to kill the process using pgAdmin Status page Cancel button.
pgAdmin responds:
A cancel signal was sent to the selected server process(es).
However, process continues running.
So it seems that child process does not respond to cancel signal from main
process.
I can reproduce this only in production database. I in test database it
works OK.
Andrus.