[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
CTRL-C does not kill remote jobs
From: |
Ole Tange |
Subject: |
CTRL-C does not kill remote jobs |
Date: |
Thu, 14 Mar 2013 17:21:06 +0100 |
On bug-parallel@gnu.org it was reported as a bug that CTRL-C does not
kill remote jobs.
It clearly is a bug, but I have found no good solution.
Running this:
parallel -qS server1 perl -e 'sleep(100)' ::: 1 2 3
and pressing CTRL-C will not killoff the 3 sleeps on server1.
But if run like this it will work:
parallel -qS 'ssh -t -t server1' perl -e 'sleep(100)' ::: 1 2 3
You will pay a price for that:
* STDIN to the process is now treated as a terminal. So --pipe with
binary data will
be quite unpredictable: E.g. ^C (ascii: 3) will send CTRL-C.
* You get 'Connection to server closed' - unless you use -o LogLevel=quiet
* On STDOUT "\n" (ascii 10) becomes "\r\n" (ascii 13 10), so binary
output on STDOUT will be messed up.
* --basefile, --transfer, --return will transfer text and not binary.
It will work fine if:
* input is normal printable strings (ascii > 32)
* output is text (beware that \n -> \r\n)
So my question is: Should that be made into an option?
/Ole
- CTRL-C does not kill remote jobs,
Ole Tange <=