testsuite: Passes testsuite (sql fails periodically).

This commit is contained in:
Ole Tange 2016-01-23 09:54:05 +01:00
parent 37fd9adb7b
commit a4ead8224d
10 changed files with 443 additions and 247 deletions

View file

@ -41,4 +41,18 @@ echo '### Are children killed if GNU Parallel receives INT twice? There should b
sleep 1; sleep 1;
pstree $$; pstree $$;
echo '**'
echo '### Do children receive --termseq signals'
show_signals() {
perl -e 'for(keys %SIG) { $SIG{$_} = eval "sub { print STDERR \"Got $_\\n\"; }";} while(1){sleep 1}';
};
export -f show_signals;
echo | stdout parallel --termseq TERM,200,TERM,100,TERM,50,KILL,25 -u --timeout 1 show_signals;
echo | stdout parallel --termseq INT,200,TERM,100,KILL,25 -u --timeout 1 show_signals;
sleep 3;
EOF EOF

View file

@ -150,7 +150,7 @@ echo "$funky" | parallel --shellquote
echo echo
echo "### Zsh environment" echo "### Zsh environment"
stdout ssh -q zsh@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated.' stdout ssh -q zsh@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated|security updates'
myvar="myvar works" myvar="myvar works"
funky=$(perl -e 'print pack "c*", 1..255') funky=$(perl -e 'print pack "c*", 1..255')
myarray=('' array_val2 3 '' 5) myarray=('' array_val2 3 '' 5)
@ -186,7 +186,7 @@ EOS
echo echo
echo "### Ksh environment" echo "### Ksh environment"
stdout ssh -q ksh@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated.' stdout ssh -q ksh@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated|security updates'
myvar="myvar works" myvar="myvar works"
funky=$(perl -e 'print pack "c*", 1..255') funky=$(perl -e 'print pack "c*", 1..255')
myarray=('' array_val2 3 '' 5) myarray=('' array_val2 3 '' 5)
@ -218,7 +218,7 @@ EOS
echo echo
echo "### Fish environment" echo "### Fish environment"
stdout ssh -q fish@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated.' stdout ssh -q fish@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated|security updates'
# All variables cannot reliably be exported # All variables cannot reliably be exported
# perl -e 'print map { "setenv///$_///$ENV{$_}\n"} grep !/^(PWD|SHLVL|PATH)$/, keys %ENV'| sh -c 'parallel --shellquote' | perl -pe 's:///: :g' |fish # perl -e 'print map { "setenv///$_///$ENV{$_}\n"} grep !/^(PWD|SHLVL|PATH)$/, keys %ENV'| sh -c 'parallel --shellquote' | perl -pe 's:///: :g' |fish
@ -277,7 +277,7 @@ echo "### csh environment"
# makealias_with_newline # makealias_with_newline
# perl -e '$/=undef;$_=<>;s/\n/\\\n/g;s/\047/\047\042\047\042\047/g;print' # perl -e '$/=undef;$_=<>;s/\n/\\\n/g;s/\047/\047\042\047\042\047/g;print'
stdout ssh -q csh@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated.' stdout ssh -q csh@lo <<'EOS' | egrep -v 'Welcome to |packages can be updated|security updates'
set myvar = "myvar works" set myvar = "myvar works"
set funky = "`perl -e 'print pack q(c*), 1..255'`" set funky = "`perl -e 'print pack q(c*), 1..255'`"
set myarray = ('' 'array_val2' '3' '' '5') set myarray = ('' 'array_val2' '3' '' '5')

View file

@ -6,8 +6,8 @@ P_ALL="vax freebsd solaris openbsd netbsd debian alpha aix redhat hpux ultrix mi
P_NOTWORKING="vax alpha openstep" P_NOTWORKING="vax alpha openstep"
P_NOTWORKING_YET="ultrix irix" P_NOTWORKING_YET="ultrix irix"
P_WORKING="freebsd solaris openbsd netbsd debian aix redhat hpux qnx openindiana suse solaris-x86 mandriva ubuntu scosysv unixware dragonfly centos miros raspbian macosx hpux-ia64 pidora" P_WORKING="freebsd solaris openbsd netbsd debian aix redhat hpux qnx openindiana suse solaris-x86 mandriva ubuntu scosysv unixware centos miros raspbian macosx hpux-ia64 pidora"
P_TEMPORARILY_BROKEN="minix syllable tru64 hurd" P_TEMPORARILY_BROKEN="minix syllable tru64 hurd dragonfly"
P="$P_WORKING" P="$P_WORKING"
POLAR=`parallel -k echo {}.polarhome.com ::: $P` POLAR=`parallel -k echo {}.polarhome.com ::: $P`

View file

@ -19,6 +19,8 @@ perl -ne '$/="\n\n"; /^Output/../^[^O]\S/ and next; /^ / and print;' ../../src/
s:ignored_vars:ignored_vars|sort:; s:ignored_vars:ignored_vars|sort:;
# Remove \n to join all joblogs into the previous block # Remove \n to join all joblogs into the previous block
s:cat /tmp/log\n:cat /tmp/log;:; s:cat /tmp/log\n:cat /tmp/log;:;
# Remove import (python code)
s:import.*::;
# When parallelized: Sleep to make sure the abc-files are made # When parallelized: Sleep to make sure the abc-files are made
/%head1/ and $_.="sleep .3\n\n"x10; /%head1/ and $_.="sleep .3\n\n"x10;
' | ' |
@ -56,6 +58,7 @@ perl -ne '$/="\n\n"; /^Output/../^[^O]\S/ and next; /^ / and print;' ../../src/
s/.*command_[ABC].*\n//; s/.*command_[ABC].*\n//;
# Due to multiple jobs "Second started" often ends up wrong # Due to multiple jobs "Second started" often ends up wrong
s/Second started\n//; s/Second started\n//;
s/The second finished\n//;
# Due to multiple jobs "tried 2" often ends up wrong # Due to multiple jobs "tried 2" often ends up wrong
s/tried 2\n//; s/tried 2\n//;
# Due to order is often mixed up # Due to order is often mixed up

View file

@ -549,7 +549,7 @@ echo '{##} bug #45841: Replacement string for total no of jobs'
1 3 3 3 3 3 3 3 1 3 3 3 3 3 3 3
2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3
3 3 3 3
parallel -k -X --plus echo {#} {##} ::: {1..15} parallel -k -S 8/: -X --plus echo {#} {##} ::: {1..15}
1 15 15 1 15 15
2 15 15 2 15 15
3 15 15 3 15 15

View file

@ -27,7 +27,16 @@ parallel: Waiting for these 1 jobs to finish. Send SIGTERM again to stop now.
parallel: bash -c sleep\ 120\ \&\ pid\=\$\!\;\ wait\ \$pid 1 parallel: bash -c sleep\ 120\ \&\ pid\=\$\!\;\ wait\ \$pid 1
echo '### Are children killed if GNU Parallel receives INT twice? There should be no sleep at the end' echo '### Are children killed if GNU Parallel receives INT twice? There should be no sleep at the end'
### Are children killed if GNU Parallel receives INT twice? There should be no sleep at the end ### Are children killed if GNU Parallel receives INT twice? There should be no sleep at the end
parallel -q bash -c 'sleep 120 & pid=$!; wait $pid' ::: 1 & T=$!; sleep 5; pstree $$; kill -INT $T; sleep 1; pstree $$; parallel -q bash -c 'sleep 120 & pid=$!; wait $pid' ::: 1 & T=$!; sleep 5; pstree $$; kill -INT $T; sleep 1; pstree $$; echo '**'
bash-+-perl---bash---sleep bash-+-perl---bash---sleep
`-pstree `-pstree
bash---pstree bash---pstree
**
echo '### Do children receive --termseq signals'
### Do children receive --termseq signals
show_signals() { perl -e 'for(keys %SIG) { $SIG{$_} = eval "sub { print STDERR \"Got $_\\n\"; }";} while(1){sleep 1}'; }; export -f show_signals; echo | stdout parallel --termseq TERM,200,TERM,100,TERM,50,KILL,25 -u --timeout 1 show_signals; echo | stdout parallel --termseq INT,200,TERM,100,KILL,25 -u --timeout 1 show_signals; sleep 3;
Got TERM
Got TERM
Got TERM
Got INT
Got TERM

View file

@ -32,58 +32,58 @@ echo '### --sqlandworker postgresql'
### --sqlandworker postgresql ### --sqlandworker postgresql
(sleep 2; parallel --sqlworker $PGTBL sleep .3\;echo >$T3) & (sleep 2; parallel --sqlworker $PGTBL sleep .3\;echo >$T3) &
parallel --sqlandworker $PGTBL sleep .3\;echo ::: {1..5} ::: {a..e} >$T4; true sort -u $T3 $T4; sql $PG 'select * from parsql order by seq;' parallel --sqlandworker $PGTBL sleep .3\;echo ::: {1..5} ::: {a..e} >$T4; true sort -u $T3 $T4; sql $PG 'select * from parsql order by seq;'
seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr
-----+------+-------------+------------+------+---------+---------+---------+-------------------+----+----+--------+-------- -----+------+----------------+------------+------+---------+---------+---------+-------------------+----+----+--------+--------
1 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 a | 1 | a | 1 a +| 1 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 a | 1 | a | 1 a +|
| | | | | | | | | | | | | | | | | | | | | | | |
2 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 b | 1 | b | 1 b +| 2 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 b | 1 | b | 1 b +|
| | | | | | | | | | | | | | | | | | | | | | | |
3 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 c | 1 | c | 1 c +| 3 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 c | 1 | c | 1 c +|
| | | | | | | | | | | | | | | | | | | | | | | |
4 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 d | 1 | d | 1 d +| 4 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 d | 1 | d | 1 d +|
| | | | | | | | | | | | | | | | | | | | | | | |
5 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 e | 1 | e | 1 e +| 5 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 e | 1 | e | 1 e +|
| | | | | | | | | | | | | | | | | | | | | | | |
6 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 a | 2 | a | 2 a +| 6 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 a | 2 | a | 2 a +|
| | | | | | | | | | | | | | | | | | | | | | | |
7 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 b | 2 | b | 2 b +| 7 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 b | 2 | b | 2 b +|
| | | | | | | | | | | | | | | | | | | | | | | |
8 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 c | 2 | c | 2 c +| 8 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 c | 2 | c | 2 c +|
| | | | | | | | | | | | | | | | | | | | | | | |
9 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 d | 2 | d | 2 d +| 9 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 d | 2 | d | 2 d +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 e | 2 | e | 2 e +| 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 e | 2 | e | 2 e +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 a | 3 | a | 3 a +| 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 a | 3 | a | 3 a +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 b | 3 | b | 3 b +| 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 b | 3 | b | 3 b +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 c | 3 | c | 3 c +| 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 c | 3 | c | 3 c +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 d | 3 | d | 3 d +| 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 d | 3 | d | 3 d +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 e | 3 | e | 3 e +| 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 e | 3 | e | 3 e +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 a | 4 | a | 4 a +| 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 a | 4 | a | 4 a +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 b | 4 | b | 4 b +| 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 b | 4 | b | 4 b +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 c | 4 | c | 4 c +| 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 c | 4 | c | 4 c +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 d | 4 | d | 4 d +| 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 d | 4 | d | 4 d +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 e | 4 | e | 4 e +| 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 e | 4 | e | 4 e +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 a | 5 | a | 5 a +| 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 a | 5 | a | 5 a +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 b | 5 | b | 5 b +| 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 b | 5 | b | 5 b +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 c | 5 | c | 5 c +| 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 c | 5 | c | 5 c +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 d | 5 | d | 5 d +| 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 d | 5 | d | 5 d +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 e | 5 | e | 5 e +| 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 e | 5 | e | 5 e +|
| | | | | | | | | | | | | | | | | | | | | | | |
(999rows) (999rows)
echo '### --sqlandworker sqlite' echo '### --sqlandworker sqlite'
@ -145,58 +145,58 @@ echo '### --sqlandworker postgresql -S lo'
### --sqlandworker postgresql -S lo ### --sqlandworker postgresql -S lo
(sleep 2; parallel -S lo --sqlworker $PGTBL2 sleep .3\;echo >$T7) & (sleep 2; parallel -S lo --sqlworker $PGTBL2 sleep .3\;echo >$T7) &
parallel -S lo --sqlandworker $PGTBL2 sleep .3\;echo ::: {1..5} ::: {a..e} >$T8; true sort -u $T7 $T8; sql $PG 'select * from parsql2 order by seq;' parallel -S lo --sqlandworker $PGTBL2 sleep .3\;echo ::: {1..5} ::: {a..e} >$T8; true sort -u $T7 $T8; sql $PG 'select * from parsql2 order by seq;'
seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr
-----+------+-------------+------------+------+---------+---------+---------+-------------------+----+----+--------+-------- -----+------+----------------+------------+------+---------+---------+---------+-------------------+----+----+--------+--------
1 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 a | 1 | a | 1 a +| 1 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 1 a | 1 | a | 1 a +|
| | | | | | | | | | | | | | | | | | | | | | | |
2 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 b | 1 | b | 1 b +| 2 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 1 b | 1 | b | 1 b +|
| | | | | | | | | | | | | | | | | | | | | | | |
3 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 c | 1 | c | 1 c +| 3 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 1 c | 1 | c | 1 c +|
| | | | | | | | | | | | | | | | | | | | | | | |
4 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 d | 1 | d | 1 d +| 4 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 1 d | 1 | d | 1 d +|
| | | | | | | | | | | | | | | | | | | | | | | |
5 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 e | 1 | e | 1 e +| 5 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 1 e | 1 | e | 1 e +|
| | | | | | | | | | | | | | | | | | | | | | | |
6 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 a | 2 | a | 2 a +| 6 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 2 a | 2 | a | 2 a +|
| | | | | | | | | | | | | | | | | | | | | | | |
7 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 b | 2 | b | 2 b +| 7 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 2 b | 2 | b | 2 b +|
| | | | | | | | | | | | | | | | | | | | | | | |
8 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 c | 2 | c | 2 c +| 8 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 2 c | 2 | c | 2 c +|
| | | | | | | | | | | | | | | | | | | | | | | |
9 | lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 d | 2 | d | 2 d +| 9 | lo |999|999| | 4 | 0 | 0 | sleep .3;echo 2 d | 2 | d | 2 d +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 e | 2 | e | 2 e +| 999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 2 e | 2 | e | 2 e +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 a | 3 | a | 3 a +| 999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 3 a | 3 | a | 3 a +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 b | 3 | b | 3 b +| 999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 3 b | 3 | b | 3 b +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 c | 3 | c | 3 c +| 999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 3 c | 3 | c | 3 c +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 d | 3 | d | 3 d +| 999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 3 d | 3 | d | 3 d +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 e | 3 | e | 3 e +| 999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 3 e | 3 | e | 3 e +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 a | 4 | a | 4 a +| 999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 4 a | 4 | a | 4 a +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 b | 4 | b | 4 b +| 999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 4 b | 4 | b | 4 b +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 c | 4 | c | 4 c +| 999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 4 c | 4 | c | 4 c +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 d | 4 | d | 4 d +| 999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 4 d | 4 | d | 4 d +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 e | 4 | e | 4 e +| 999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 4 e | 4 | e | 4 e +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 a | 5 | a | 5 a +| 999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 5 a | 5 | a | 5 a +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 b | 5 | b | 5 b +| 999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 5 b | 5 | b | 5 b +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 c | 5 | c | 5 c +| 999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 5 c | 5 | c | 5 c +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 d | 5 | d | 5 d +| 999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 5 d | 5 | d | 5 d +|
| | | | | | | | | | | | | | | | | | | | | | | |
999| lo |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 e | 5 | e | 5 e +| 999| lo |999|999| | 4 | 0 | 0 | sleep .3;echo 5 e | 5 | e | 5 e +|
| | | | | | | | | | | | | | | | | | | | | | | |
(999rows) (999rows)
echo '### --sqlandworker postgresql --results' echo '### --sqlandworker postgresql --results'
@ -204,98 +204,98 @@ echo '### --sqlandworker postgresql --results'
mkdir -p /tmp/out--sql mkdir -p /tmp/out--sql
(sleep 2; parallel --results /tmp/out--sql --sqlworker $PGTBL3 sleep .3\;echo >$T9) & (sleep 2; parallel --results /tmp/out--sql --sqlworker $PGTBL3 sleep .3\;echo >$T9) &
parallel --results /tmp/out--sql --sqlandworker $PGTBL3 sleep .3\;echo ::: {1..5} ::: {a..e} >$T999; true sort -u $T9 $T999; sql $PG 'select * from parsql3 order by seq;' parallel --results /tmp/out--sql --sqlandworker $PGTBL3 sleep .3\;echo ::: {1..5} ::: {a..e} >$T999; true sort -u $T9 $T999; sql $PG 'select * from parsql3 order by seq;'
seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr
-----+------+-------------+------------+------+---------+---------+---------+-------------------+----+----+------------------------------+------------------------------ -----+------+----------------+------------+------+---------+---------+---------+-------------------+----+----+------------------------------+------------------------------
1 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 a | 1 | a | /tmp/out--sql/1/1/2/a/stdout | /tmp/out--sql/1/1/2/a/stderr 1 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 a | 1 | a | /tmp/out--sql/1/1/2/a/stdout | /tmp/out--sql/1/1/2/a/stderr
2 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 b | 1 | b | /tmp/out--sql/1/1/2/b/stdout | /tmp/out--sql/1/1/2/b/stderr 2 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 b | 1 | b | /tmp/out--sql/1/1/2/b/stdout | /tmp/out--sql/1/1/2/b/stderr
3 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 c | 1 | c | /tmp/out--sql/1/1/2/c/stdout | /tmp/out--sql/1/1/2/c/stderr 3 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 c | 1 | c | /tmp/out--sql/1/1/2/c/stdout | /tmp/out--sql/1/1/2/c/stderr
4 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 d | 1 | d | /tmp/out--sql/1/1/2/d/stdout | /tmp/out--sql/1/1/2/d/stderr 4 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 d | 1 | d | /tmp/out--sql/1/1/2/d/stdout | /tmp/out--sql/1/1/2/d/stderr
5 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 e | 1 | e | /tmp/out--sql/1/1/2/e/stdout | /tmp/out--sql/1/1/2/e/stderr 5 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 e | 1 | e | /tmp/out--sql/1/1/2/e/stdout | /tmp/out--sql/1/1/2/e/stderr
6 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 a | 2 | a | /tmp/out--sql/1/2/2/a/stdout | /tmp/out--sql/1/2/2/a/stderr 6 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 a | 2 | a | /tmp/out--sql/1/2/2/a/stdout | /tmp/out--sql/1/2/2/a/stderr
7 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 b | 2 | b | /tmp/out--sql/1/2/2/b/stdout | /tmp/out--sql/1/2/2/b/stderr 7 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 b | 2 | b | /tmp/out--sql/1/2/2/b/stdout | /tmp/out--sql/1/2/2/b/stderr
8 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 c | 2 | c | /tmp/out--sql/1/2/2/c/stdout | /tmp/out--sql/1/2/2/c/stderr 8 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 c | 2 | c | /tmp/out--sql/1/2/2/c/stdout | /tmp/out--sql/1/2/2/c/stderr
9 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 d | 2 | d | /tmp/out--sql/1/2/2/d/stdout | /tmp/out--sql/1/2/2/d/stderr 9 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 d | 2 | d | /tmp/out--sql/1/2/2/d/stdout | /tmp/out--sql/1/2/2/d/stderr
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 e | 2 | e | /tmp/out--sql/1/2/2/e/stdout | /tmp/out--sql/1/2/2/e/stderr 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 e | 2 | e | /tmp/out--sql/1/2/2/e/stdout | /tmp/out--sql/1/2/2/e/stderr
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 a | 3 | a | /tmp/out--sql/1/3/2/a/stdout | /tmp/out--sql/1/3/2/a/stderr 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 a | 3 | a | /tmp/out--sql/1/3/2/a/stdout | /tmp/out--sql/1/3/2/a/stderr
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 b | 3 | b | /tmp/out--sql/1/3/2/b/stdout | /tmp/out--sql/1/3/2/b/stderr 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 b | 3 | b | /tmp/out--sql/1/3/2/b/stdout | /tmp/out--sql/1/3/2/b/stderr
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 c | 3 | c | /tmp/out--sql/1/3/2/c/stdout | /tmp/out--sql/1/3/2/c/stderr 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 c | 3 | c | /tmp/out--sql/1/3/2/c/stdout | /tmp/out--sql/1/3/2/c/stderr
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 d | 3 | d | /tmp/out--sql/1/3/2/d/stdout | /tmp/out--sql/1/3/2/d/stderr 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 d | 3 | d | /tmp/out--sql/1/3/2/d/stdout | /tmp/out--sql/1/3/2/d/stderr
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 e | 3 | e | /tmp/out--sql/1/3/2/e/stdout | /tmp/out--sql/1/3/2/e/stderr 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 e | 3 | e | /tmp/out--sql/1/3/2/e/stdout | /tmp/out--sql/1/3/2/e/stderr
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 a | 4 | a | /tmp/out--sql/1/4/2/a/stdout | /tmp/out--sql/1/4/2/a/stderr 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 a | 4 | a | /tmp/out--sql/1/4/2/a/stdout | /tmp/out--sql/1/4/2/a/stderr
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 b | 4 | b | /tmp/out--sql/1/4/2/b/stdout | /tmp/out--sql/1/4/2/b/stderr 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 b | 4 | b | /tmp/out--sql/1/4/2/b/stdout | /tmp/out--sql/1/4/2/b/stderr
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 c | 4 | c | /tmp/out--sql/1/4/2/c/stdout | /tmp/out--sql/1/4/2/c/stderr 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 c | 4 | c | /tmp/out--sql/1/4/2/c/stdout | /tmp/out--sql/1/4/2/c/stderr
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 d | 4 | d | /tmp/out--sql/1/4/2/d/stdout | /tmp/out--sql/1/4/2/d/stderr 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 d | 4 | d | /tmp/out--sql/1/4/2/d/stdout | /tmp/out--sql/1/4/2/d/stderr
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 e | 4 | e | /tmp/out--sql/1/4/2/e/stdout | /tmp/out--sql/1/4/2/e/stderr 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 e | 4 | e | /tmp/out--sql/1/4/2/e/stdout | /tmp/out--sql/1/4/2/e/stderr
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 a | 5 | a | /tmp/out--sql/1/5/2/a/stdout | /tmp/out--sql/1/5/2/a/stderr 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 a | 5 | a | /tmp/out--sql/1/5/2/a/stdout | /tmp/out--sql/1/5/2/a/stderr
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 b | 5 | b | /tmp/out--sql/1/5/2/b/stdout | /tmp/out--sql/1/5/2/b/stderr 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 b | 5 | b | /tmp/out--sql/1/5/2/b/stdout | /tmp/out--sql/1/5/2/b/stderr
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 c | 5 | c | /tmp/out--sql/1/5/2/c/stdout | /tmp/out--sql/1/5/2/c/stderr 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 c | 5 | c | /tmp/out--sql/1/5/2/c/stdout | /tmp/out--sql/1/5/2/c/stderr
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 d | 5 | d | /tmp/out--sql/1/5/2/d/stdout | /tmp/out--sql/1/5/2/d/stderr 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 d | 5 | d | /tmp/out--sql/1/5/2/d/stdout | /tmp/out--sql/1/5/2/d/stderr
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 e | 5 | e | /tmp/out--sql/1/5/2/e/stdout | /tmp/out--sql/1/5/2/e/stderr 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 e | 5 | e | /tmp/out--sql/1/5/2/e/stdout | /tmp/out--sql/1/5/2/e/stderr
(999rows) (999rows)
echo '### --sqlandworker postgresql --linebuffer' echo '### --sqlandworker postgresql --linebuffer'
### --sqlandworker postgresql --linebuffer ### --sqlandworker postgresql --linebuffer
(sleep 2; parallel --linebuffer --sqlworker $PGTBL4 sleep .3\;echo >$T999) & (sleep 2; parallel --linebuffer --sqlworker $PGTBL4 sleep .3\;echo >$T999) &
parallel --linebuffer --sqlandworker $PGTBL4 sleep .3\;echo ::: {1..5} ::: {a..e} >$T999; true sort -u $T999$T999; sql $PG 'select * from parsql4 order by seq;' parallel --linebuffer --sqlandworker $PGTBL4 sleep .3\;echo ::: {1..5} ::: {a..e} >$T999; true sort -u $T999$T999; sql $PG 'select * from parsql4 order by seq;'
seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr
-----+------+-------------+------------+------+---------+---------+---------+-------------------+----+----+--------+-------- -----+------+----------------+------------+------+---------+---------+---------+-------------------+----+----+--------+--------
1 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 a | 1 | a | | 1 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 a | 1 | a | |
2 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 b | 1 | b | | 2 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 b | 1 | b | |
3 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 c | 1 | c | | 3 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 c | 1 | c | |
4 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 d | 1 | d | | 4 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 d | 1 | d | |
5 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 1 e | 1 | e | | 5 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 1 e | 1 | e | |
6 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 a | 2 | a | | 6 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 a | 2 | a | |
7 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 b | 2 | b | | 7 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 b | 2 | b | |
8 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 c | 2 | c | | 8 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 c | 2 | c | |
9 | : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 d | 2 | d | | 9 | : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 d | 2 | d | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 2 e | 2 | e | | 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 2 e | 2 | e | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 a | 3 | a | | 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 a | 3 | a | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 b | 3 | b | | 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 b | 3 | b | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 c | 3 | c | | 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 c | 3 | c | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 d | 3 | d | | 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 d | 3 | d | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 3 e | 3 | e | | 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 3 e | 3 | e | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 a | 4 | a | | 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 a | 4 | a | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 b | 4 | b | | 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 b | 4 | b | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 c | 4 | c | | 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 c | 4 | c | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 d | 4 | d | | 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 d | 4 | d | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 4 e | 4 | e | | 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 4 e | 4 | e | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 a | 5 | a | | 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 a | 5 | a | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 b | 5 | b | | 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 b | 5 | b | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 c | 5 | c | | 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 c | 5 | c | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 d | 5 | d | | 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 d | 5 | d | |
999| : |999e+999|999| | 4 | 0 | 0 | sleep .3;echo 5 e | 5 | e | | 999| : |999|999| | 4 | 0 | 0 | sleep .3;echo 5 e | 5 | e | |
(999rows) (999rows)
echo '### --sqlandworker postgresql -u' echo '### --sqlandworker postgresql -u'
### --sqlandworker postgresql -u ### --sqlandworker postgresql -u
(sleep 2; parallel -u --sqlworker $PGTBL5 sleep .3\;echo >$T999) & (sleep 2; parallel -u --sqlworker $PGTBL5 sleep .3\;echo >$T999) &
parallel -u --sqlandworker $PGTBL5 sleep .3\;echo ::: {1..5} ::: {a..e} >$T999; true sort -u $T999$T999; sql $PG 'select * from parsql5 order by seq;' parallel -u --sqlandworker $PGTBL5 sleep .3\;echo ::: {1..5} ::: {a..e} >$T999; true sort -u $T999$T999; sql $PG 'select * from parsql5 order by seq;'
seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr seq | host | starttime | jobruntime | send | receive | exitval | _signal | command | v1 | v2 | stdout | stderr
-----+------+-------------+------------+------+---------+---------+---------+-------------------+----+----+--------+-------- -----+------+----------------+------------+------+---------+---------+---------+-------------------+----+----+--------+--------
1 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 1 a | 1 | a | | 1 | : |999|999| | | 0 | 0 | sleep .3;echo 1 a | 1 | a | |
2 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 1 b | 1 | b | | 2 | : |999|999| | | 0 | 0 | sleep .3;echo 1 b | 1 | b | |
3 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 1 c | 1 | c | | 3 | : |999|999| | | 0 | 0 | sleep .3;echo 1 c | 1 | c | |
4 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 1 d | 1 | d | | 4 | : |999|999| | | 0 | 0 | sleep .3;echo 1 d | 1 | d | |
5 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 1 e | 1 | e | | 5 | : |999|999| | | 0 | 0 | sleep .3;echo 1 e | 1 | e | |
6 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 2 a | 2 | a | | 6 | : |999|999| | | 0 | 0 | sleep .3;echo 2 a | 2 | a | |
7 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 2 b | 2 | b | | 7 | : |999|999| | | 0 | 0 | sleep .3;echo 2 b | 2 | b | |
8 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 2 c | 2 | c | | 8 | : |999|999| | | 0 | 0 | sleep .3;echo 2 c | 2 | c | |
9 | : |999e+999|999| | | 0 | 0 | sleep .3;echo 2 d | 2 | d | | 9 | : |999|999| | | 0 | 0 | sleep .3;echo 2 d | 2 | d | |
999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 2 e | 2 | e | | 999| : |999|999| | | 0 | 0 | sleep .3;echo 2 e | 2 | e | |
999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 3 a | 3 | a | | 999| : |999|999| | | 0 | 0 | sleep .3;echo 3 a | 3 | a | |
999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 3 b | 3 | b | | 999| : |999|999| | | 0 | 0 | sleep .3;echo 3 b | 3 | b | |
999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 3 c | 3 | c | | 999| : |999|999| | | 0 | 0 | sleep .3;echo 3 c | 3 | c | |
999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 3 d | 3 | d | | 999| : |999|999| | | 0 | 0 | sleep .3;echo 3 d | 3 | d | |
999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 3 e | 3 | e | | 999| : |999|999| | | 0 | 0 | sleep .3;echo 3 e | 3 | e | |
999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 4 a | 4 | a | | 999| : |999|999| | | 0 | 0 | sleep .3;echo 4 a | 4 | a | |
999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 4 b | 4 | b | | 999| : |999|999| | | 0 | 0 | sleep .3;echo 4 b | 4 | b | |
999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 4 c | 4 | c | | 999| : |999|999| | | 0 | 0 | sleep .3;echo 4 c | 4 | c | |
999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 4 d | 4 | d | | 999| : |999|999| | | 0 | 0 | sleep .3;echo 4 d | 4 | d | |
999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 4 e | 4 | e | | 999| : |999|999| | | 0 | 0 | sleep .3;echo 4 e | 4 | e | |
999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 5 a | 5 | a | | 999| : |999|999| | | 0 | 0 | sleep .3;echo 5 a | 5 | a | |
999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 5 b | 5 | b | | 999| : |999|999| | | 0 | 0 | sleep .3;echo 5 b | 5 | b | |
999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 5 c | 5 | c | | 999| : |999|999| | | 0 | 0 | sleep .3;echo 5 c | 5 | c | |
999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 5 d | 5 | d | | 999| : |999|999| | | 0 | 0 | sleep .3;echo 5 d | 5 | d | |
999| : |999e+999|999| | | 0 | 0 | sleep .3;echo 5 e | 5 | e | | 999| : |999|999| | | 0 | 0 | sleep .3;echo 5 e | 5 | e | |
(999rows) (999rows)

View file

@ -140,7 +140,6 @@ Funky-
* Documentation: http://www.linuxmint.com * Documentation: http://www.linuxmint.com
0 updates are security updates.
zsh:130: command not found: alias_echo zsh:130: command not found: alias_echo
function_works function_works
@ -166,7 +165,6 @@ Funky-
* Documentation: http://www.linuxmint.com * Documentation: http://www.linuxmint.com
0 updates are security updates.
3 arg alias_works 3 arg alias_works
function_works function_works
@ -190,7 +188,6 @@ Funky-
* Documentation: http://www.linuxmint.com * Documentation: http://www.linuxmint.com
0 updates are security updates.
3 arg alias_works 3 arg alias_works
function_works function_works
@ -223,7 +220,6 @@ Funky-   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJ
* Documentation: http://www.linuxmint.com * Documentation: http://www.linuxmint.com
0 updates are security updates.
Warning: no access to tty (Bad file descriptor). Warning: no access to tty (Bad file descriptor).
Thus no job control in this shell. Thus no job control in this shell.

View file

@ -3,7 +3,7 @@ Setup on polarhome machines
copy_and_test freebsd.polarhome.com copy_and_test freebsd.polarhome.com
freebsd.polarhome.com ### Run the test on freebsd.polarhome.com freebsd.polarhome.com ### Run the test on freebsd.polarhome.com
freebsd.polarhome.com Works on freebsd.polarhome.com freebsd.polarhome.com Works on freebsd.polarhome.com
freebsd.polarhome.com Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at bin/parallel line 0000. freebsd.polarhome.com Error in tempfile() using template /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at bin/parallel line 0000.
copy_and_test solaris.polarhome.com copy_and_test solaris.polarhome.com
solaris.polarhome.com ### Run the test on solaris.polarhome.com solaris.polarhome.com ### Run the test on solaris.polarhome.com
solaris.polarhome.com Works on solaris.polarhome.com solaris.polarhome.com Works on solaris.polarhome.com
@ -68,10 +68,6 @@ copy_and_test unixware.polarhome.com
unixware.polarhome.com ### Run the test on unixware.polarhome.com unixware.polarhome.com ### Run the test on unixware.polarhome.com
unixware.polarhome.com Works on unixware.polarhome.com unixware.polarhome.com Works on unixware.polarhome.com
unixware.polarhome.com Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at bin/parallel line 0000 unixware.polarhome.com Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at bin/parallel line 0000
copy_and_test dragonfly.polarhome.com
dragonfly.polarhome.com ### Run the test on dragonfly.polarhome.com
dragonfly.polarhome.com Works on dragonfly.polarhome.com
dragonfly.polarhome.com Error in tempfile() using /XXXXXXXX.arg: Could not create temp file /XXXXXXXX.arg: Permission denied at bin/parallel line 0000
copy_and_test centos.polarhome.com copy_and_test centos.polarhome.com
centos.polarhome.com ### Run the test on centos.polarhome.com centos.polarhome.com ### Run the test on centos.polarhome.com
centos.polarhome.com Works on centos.polarhome.com centos.polarhome.com Works on centos.polarhome.com
@ -102,7 +98,6 @@ pidora.polarhome.com Error in tempfile() using template /XXXXXXXX.arg: Could not
aix7 aix7
centos.polarhome.com centos.polarhome.com
debian debian
dragonfly.polarhome.com
freebsd.polarhome.com freebsd.polarhome.com
hpux-ia64 hpux-ia64
hpux64 hpux64

View file

@ -187,6 +187,26 @@ B
1 1
parallel echo '{= s:\.[^.]+$::;s:\.[^.]+$::; =}' ::: foo.tar.gz parallel echo '{= s:\.[^.]+$::;s:\.[^.]+$::; =}' ::: foo.tar.gz
foo foo
parallel echo Job {#} of {= '$_=total_jobs()' =} ::: {1..5}
Job 1 of 5
Job 2 of 5
Job 3 of 5
Job 4 of 5
Job 5 of 5
parallel echo {} shell quoted is {= '$_=Q($_)' =} ::: '*/!#$'
*/!#$ shell quoted is \*/\!\#\$
parallel echo {= 'if($_==3) { $job->skip() }' =} ::: {1..5}
1
2
4
5
parallel echo {= 'if($arg[1]==$arg[2]) { $job->skip() }' =} ::: {1..3} ::: {1..3}
1 2
1 3
2 1
2 3
3 1
3 2
parallel --parens ,,,, echo ',, s:\.[^.]+$::;s:\.[^.]+$::; ,,' ::: foo.tar.gz parallel --parens ,,,, echo ',, s:\.[^.]+$::;s:\.[^.]+$::; ,,' ::: foo.tar.gz
foo foo
parallel --rpl '.. s:\.[^.]+$::;s:\.[^.]+$::;' echo '..' ::: foo.tar.gz parallel --rpl '.. s:\.[^.]+$::;s:\.[^.]+$::;' echo '..' ::: foo.tar.gz
@ -240,6 +260,28 @@ f1=B f2=D
parallel --header : --colsep '\t' echo f1={f1} f2={f2} :::: tsv-file.tsv parallel --header : --colsep '\t' echo f1={f1} f2={f2} :::: tsv-file.tsv
f1=A f2=B f1=A f2=B
f1=C f2=D f1=C f2=D
parallel --plus echo {} ::: dir/sub/file.ext1.ext2.ext3
parallel --plus echo {+/}/{/} ::: dir/sub/file.ext1.ext2.ext3
parallel --plus echo {.}.{+.} ::: dir/sub/file.ext1.ext2.ext3
parallel --plus echo {+/}/{/.}.{+.} ::: dir/sub/file.ext1.ext2.ext3
parallel --plus echo {..}.{+..} ::: dir/sub/file.ext1.ext2.ext3
parallel --plus echo {+/}/{/..}.{+..} ::: dir/sub/file.ext1.ext2.ext3
parallel --plus echo {...}.{+...} ::: dir/sub/file.ext1.ext2.ext3
parallel --plus echo {+/}/{/...}.{+...} ::: dir/sub/file.ext1.ext2.ext3
dir/sub/file.ext1.ext2.ext3
dir/sub/file.ext1.ext2.ext3
dir/sub/file.ext1.ext2.ext3
dir/sub/file.ext1.ext2.ext3
dir/sub/file.ext1.ext2.ext3
dir/sub/file.ext1.ext2.ext3
dir/sub/file.ext1.ext2.ext3
dir/sub/file.ext1.ext2.ext3
parallel --plus echo Job {#} of {##} ::: {1..5}
Job 1 of 5
Job 2 of 5
Job 3 of 5
Job 4 of 5
Job 5 of 5
cat num30000 | parallel --xargs echo | wc -l cat num30000 | parallel --xargs echo | wc -l
3 3
cat num30000 | parallel --xargs -s 10000 echo | wc -l cat num30000 | parallel --xargs -s 10000 echo | wc -l
@ -356,39 +398,53 @@ echo C
A A
B B
C C
outdir/1/A/seq
outdir/1/A/stderr outdir/1/A/stderr
outdir/1/A/stdout outdir/1/A/stdout
outdir/1/B/seq
outdir/1/B/stderr outdir/1/B/stderr
outdir/1/B/stdout outdir/1/B/stdout
outdir/1/C/seq
outdir/1/C/stderr outdir/1/C/stderr
outdir/1/C/stdout outdir/1/C/stdout
/bin/bash: outdir/1/A/stderr: No such file or directory /bin/bash: outdir/1/A/seq: No such file or directory
/bin/bash: line 1: outdir/1/A/stdout: No such file or directory /bin/bash: line 1: outdir/1/A/stderr: No such file or directory
/bin/bash: line 2: outdir/1/B/stderr: No such file or directory /bin/bash: line 2: outdir/1/A/stdout: No such file or directory
/bin/bash: line 3: outdir/1/B/stdout: No such file or directory /bin/bash: line 3: outdir/1/B/seq: No such file or directory
/bin/bash: line 4: outdir/1/C/stderr: No such file or directory /bin/bash: line 4: outdir/1/B/stderr: No such file or directory
/bin/bash: line 5: outdir/1/C/stdout: No such file or directory /bin/bash: line 5: outdir/1/B/stdout: No such file or directory
/bin/bash: line 6: outdir/1/C/seq: No such file or directory
/bin/bash: line 7: outdir/1/C/stderr: No such file or directory
/bin/bash: line 8: outdir/1/C/stdout: No such file or directory
parallel --header : --results outdir echo ::: f1 A B ::: f2 C D parallel --header : --results outdir echo ::: f1 A B ::: f2 C D
A C A C
A D A D
B C B C
B D B D
outdir/f1/A/f2/C/seq
outdir/f1/A/f2/C/stderr outdir/f1/A/f2/C/stderr
outdir/f1/A/f2/C/stdout outdir/f1/A/f2/C/stdout
outdir/f1/A/f2/D/seq
outdir/f1/A/f2/D/stderr outdir/f1/A/f2/D/stderr
outdir/f1/A/f2/D/stdout outdir/f1/A/f2/D/stdout
outdir/f1/B/f2/C/seq
outdir/f1/B/f2/C/stderr outdir/f1/B/f2/C/stderr
outdir/f1/B/f2/C/stdout outdir/f1/B/f2/C/stdout
outdir/f1/B/f2/D/seq
outdir/f1/B/f2/D/stderr outdir/f1/B/f2/D/stderr
outdir/f1/B/f2/D/stdout outdir/f1/B/f2/D/stdout
/bin/bash: outdir/f1/A/f2/C/stderr: No such file or directory /bin/bash: outdir/f1/A/f2/C/seq: No such file or directory
/bin/bash: line 1: outdir/f1/A/f2/C/stdout: No such file or directory /bin/bash: line 1: outdir/f1/A/f2/C/stderr: No such file or directory
/bin/bash: line 2: outdir/f1/A/f2/D/stderr: No such file or directory /bin/bash: line 2: outdir/f1/A/f2/C/stdout: No such file or directory
/bin/bash: line 3: outdir/f1/A/f2/D/stdout: No such file or directory /bin/bash: line 3: outdir/f1/A/f2/D/seq: No such file or directory
/bin/bash: line 4: outdir/f1/B/f2/C/stderr: No such file or directory /bin/bash: line 4: outdir/f1/A/f2/D/stderr: No such file or directory
/bin/bash: line 5: outdir/f1/B/f2/C/stdout: No such file or directory /bin/bash: line 5: outdir/f1/A/f2/D/stdout: No such file or directory
/bin/bash: line 6: outdir/f1/B/f2/D/stderr: No such file or directory /bin/bash: line 6: outdir/f1/B/f2/C/seq: No such file or directory
/bin/bash: line 7: outdir/f1/B/f2/D/stdout: No such file or directory /bin/bash: line 7: outdir/f1/B/f2/C/stderr: No such file or directory
/bin/bash: line 8: outdir/f1/B/f2/C/stdout: No such file or directory
/bin/bash: line 9: outdir/f1/B/f2/D/seq: No such file or directory
/bin/bash: line 10: outdir/f1/B/f2/D/stderr: No such file or directory
/bin/bash: line 11: outdir/f1/B/f2/D/stdout: No such file or directory
/usr/bin/time -f %e parallel -N0 -j64 sleep 1 :::: num128 /usr/bin/time -f %e parallel -N0 -j64 sleep 1 :::: num128
2 2
/usr/bin/time -f %e parallel -N0 sleep 1 :::: num128 /usr/bin/time -f %e parallel -N0 sleep 1 :::: num128
@ -474,6 +530,8 @@ BASE64 parallel --joblog /tmp/log exit ::: 1 2 3 0
cat /tmp/log; cat /tmp/log;
parallel --resume-failed --joblog /tmp/log exit ::: 1 2 3 0 0 0 parallel --resume-failed --joblog /tmp/log exit ::: 1 2 3 0 0 0
cat /tmp/log; cat /tmp/log;
parallel --resume-failed --joblog /tmp/log
cat /tmp/log;
parallel -j2 --halt soon,fail=1 echo {}\; exit {} ::: 0 0 1 2 3 parallel -j2 --halt soon,fail=1 echo {}\; exit {} ::: 0 0 1 2 3
Seq Host Starttime JobRuntime Send Receive Exitval Signal Command Seq Host Starttime JobRuntime Send Receive Exitval Signal Command
1 : TIMESTAMP 9.999 0 0 1 0 exit 1 1 : TIMESTAMP 9.999 0 0 1 0 exit 1
@ -502,6 +560,16 @@ Seq Host Starttime JobRuntime Send Receive Exitval Signal Command
1 : TIMESTAMP 9.999 0 0 1 0 exit 1 1 : TIMESTAMP 9.999 0 0 1 0 exit 1
2 : TIMESTAMP 9.999 0 0 2 0 exit 2 2 : TIMESTAMP 9.999 0 0 2 0 exit 2
3 : TIMESTAMP 9.999 0 0 3 0 exit 3 3 : TIMESTAMP 9.999 0 0 3 0 exit 3
Seq Host Starttime JobRuntime Send Receive Exitval Signal Command
1 : TIMESTAMP 9.999 0 0 1 0 exit 1
2 : TIMESTAMP 9.999 0 0 2 0 exit 2
3 : TIMESTAMP 9.999 0 0 3 0 exit 3
4 : TIMESTAMP 9.999 0 0 0 0 exit 0
5 : TIMESTAMP 9.999 0 0 0 0 exit 0
6 : TIMESTAMP 9.999 0 0 0 0 exit 0
1 : TIMESTAMP 9.999 0 0 1 0 exit 1
2 : TIMESTAMP 9.999 0 0 2 0 exit 2
3 : TIMESTAMP 9.999 0 0 3 0 exit 3
0 0
0 0
1 1
@ -529,15 +597,13 @@ echo X; exit X
parallel: Starting no more jobs. Waiting for 1 jobs to finish. parallel: Starting no more jobs. Waiting for 1 jobs to finish.
parallel: This job failed: parallel: This job failed:
echo X; exit X echo X; exit X
parallel -j2 --halt soon,success=1 echo {}\; exit {} ::: 1 2 3 0 4 5 6 parallel -j2 --halt now,success=1 echo {}\; exit {} ::: 1 2 3 0 4 5 6
1 1
2 2
3 3
0 0
4
parallel: This job succeeded: parallel: This job succeeded:
echo X; exit X echo X; exit X
parallel: Starting no more jobs. Waiting for 1 jobs to finish.
parallel -k --retries 3 'echo tried {} >>/tmp/runs; echo completed {}; exit {}' ::: 1 2 0 parallel -k --retries 3 'echo tried {} >>/tmp/runs; echo completed {}; exit {}' ::: 1 2 0
cat /tmp/runs cat /tmp/runs
completed 1 completed 1
@ -547,10 +613,19 @@ tried 1
tried 0 tried 0
tried 1 tried 1
tried 1 tried 1
show_signals() {
perl -e 'for(keys %SIG) { $SIG{$_} = eval "sub { print \"Got $_\\n\"; }";} while(1){sleep 1}'
}
export -f show_signals
echo | parallel --termseq TERM,200,TERM,100,TERM,50,KILL,25 -u --timeout 1 show_signals
echo | parallel --termseq INT,200,TERM,100,KILL,25 -u --timeout 1 show_signals
/bin/bash: show_signals: command not found
parallel --load 100% echo load is less than {} job per cpu ::: 1 parallel --load 100% echo load is less than {} job per cpu ::: 1
load is less than 1 job per cpu load is less than 1 job per cpu
parallel --noswap echo the system is not swapping ::: now parallel --noswap echo the system is not swapping ::: now
the system is not swapping now the system is not swapping now
parallel --memfree 1G echo will run if more than 1 GB is ::: free
will run if more than 1 GB is free
parallel --nice 17 echo this is being run with nice -n ::: 17 parallel --nice 17 echo this is being run with nice -n ::: 17
this is being run with nice -n 17 this is being run with nice -n 17
parallel -S $SERVER1 echo running on ::: $SERVER1 parallel -S $SERVER1 echo running on ::: $SERVER1
@ -560,6 +635,11 @@ running on username@parallel@lo
parallel -S : echo running on ::: the_local_machine parallel -S : echo running on ::: the_local_machine
running on the_local_machine running on the_local_machine
parallel -S '/usr/bin/ssh '$SERVER1 echo custom ::: ssh parallel -S '/usr/bin/ssh '$SERVER1 echo custom ::: ssh
custom ssh
parallel --ssh /usr/bin/ssh -S $SERVER1 echo custom ::: ssh
custom ssh
export PARALLEL_SSH=/usr/bin/ssh
parallel -S $SERVER1 echo custom ::: ssh
custom ssh custom ssh
parallel -S $SERVER1 -S $SERVER2 echo ::: running on more hosts parallel -S $SERVER1 -S $SERVER2 echo ::: running on more hosts
running running
@ -576,18 +656,19 @@ more
hosts hosts
parallel -S 4/$SERVER1 echo force {} cpus on server ::: 4 parallel -S 4/$SERVER1 echo force {} cpus on server ::: 4
force 4 cpus on server force 4 cpus on server
parallel --hostgroup -S @grp1/$SERVER1 -S @grp2/$SERVER2 echo {} ::: run_on_grp1@grp1 run_on_grp2@grp2 parallel --hostgroup -S @grp1/$SERVER1 -S @grp2/$SERVER2 echo {} ::: \
run_on_grp1@grp1 run_on_grp2@grp2
run_on_grp1 run_on_grp1
run_on_grp2 run_on_grp2
echo This is input_file > input_file echo This is input_file > input_file
parallel -S $SERVER1 --transfer cat ::: input_file parallel -S $SERVER1 --transferfile {} cat ::: input_file
This is input_file This is input_file
echo This is input_file > input_file echo This is input_file > input_file
parallel -S $SERVER1 --transfer --return {}.out cat {} ">"{}.out ::: input_file parallel -S $SERVER1 --transferfile {} --return {}.out cat {} ">"{}.out ::: input_file
cat input_file.out cat input_file.out
This is input_file This is input_file
echo This is input_file > input_file echo This is input_file > input_file
parallel -S $SERVER1 --transfer --return {}.out --cleanup cat {} ">"{}.out ::: input_file parallel -S $SERVER1 --transferfile {} --return {}.out --cleanup cat {} ">"{}.out ::: input_file
cat input_file.out cat input_file.out
This is input_file This is input_file
echo This is input_file > input_file echo This is input_file > input_file
@ -735,14 +816,34 @@ _
/bin/bash: my_func2: command not found /bin/bash: my_func2: command not found
parallel -vv -S $SERVER1 echo ::: bar parallel -vv -S $SERVER1 echo ::: bar
ssh -l parallel lo -- exec perl -e \''@GNU_Parallel=("use","IPC::Open3;","use","MIME::Base64");eval"@GNU_Parallel";$SIG{CHLD}="IGNORE";my$zip=(grep{-x$_}"/usr/local/bin/bzip2")[0]||"bzip2";my($in,$out,$eval);open3($in,$out,">&STDERR",$zip,"-dc");if(my$perlpid=fork){close$in;$eval=join"",<$out>;close$out;}else{close$out;print$in(decode_base64(join"",@ARGV));close$in;exit;}wait;eval$eval;'\' BASE64; ssh -l parallel lo -- exec perl -e \''@GNU_Parallel=("use","IPC::Open3;","use","MIME::Base64");eval"@GNU_Parallel";my$eval;$eval=decode_base64(join"",@ARGV);eval$eval;'\' BASE64;
bar bar
my_func3() { my_func3() {
echo in my_func $1 > $1.out echo in my_func $1 > $1.out
} }
export -f my_func3 export -f my_func3
parallel -vv --workdir ... --nice 17 --env _ --trc {}.out -S $SERVER1 my_func3 {} ::: abc-file parallel -vv --workdir ... --nice 17 --env _ --trc {}.out -S $SERVER1 my_func3 {} ::: abc-file
( ssh -l parallel lo -- mkdir -p ./.TMPWORKDIR;rsync --protocol 30 -rlDzR -essh\ -l\ parallel ./abc-file lo:./.TMPWORKDIR );ssh -l parallel lo -- exec perl -e \''@GNU_Parallel=("use","IPC::Open3;","use","MIME::Base64");eval"@GNU_Parallel";$SIG{CHLD}="IGNORE";my$zip=(grep{-x$_}"/usr/local/bin/bzip2")[0]||"bzip2";my($in,$out,$eval);open3($in,$out,">&STDERR",$zip,"-dc");if(my$perlpid=fork){close$in;$eval=join"",<$out>;close$out;}else{close$out;print$in(decode_base64(join"",@ARGV));close$in;exit;}wait;eval$eval;'\' BASE64;_EXIT_status=$?; mkdir -p ./.; rsync --protocol 30 --rsync-path=cd\ ./.TMPWORKDIR/./.\;\ rsync -rlDzR -essh\ -l\ parallel lo:./abc-file.out ./.;ssh -l parallel lo -- \(rm\ -f\ ./.TMPWORKDIR/abc-file\;\ sh\ -c\ \'rmdir\ ./.TMPWORKDIR/\ ./.parallel/tmp/\ ./.parallel/\ 2\>/dev/null\'\;rm\ -rf\ ./.TMPWORKDIR\;\);ssh -l parallel lo -- \(rm\ -f\ ./.TMPWORKDIR/abc-file.out\;\ sh\ -c\ \'rmdir\ ./.TMPWORKDIR/\ ./.parallel/tmp/\ ./.parallel/\ 2\>/dev/null\'\;rm\ -rf\ ./.TMPWORKDIR\;\);ssh -l parallel lo -- rm -rf .TMPWORKDIR; exit $_EXIT_status; ( ssh -l parallel lo -- mkdir -p ./.TMPWORKDIR;rsync --protocol 30 -rlDzR -essh\ -l\ parallel ./abc-file lo:./.TMPWORKDIR );ssh -l parallel lo -- exec perl -e \''@GNU_Parallel=("use","IPC::Open3;","use","MIME::Base64");eval"@GNU_Parallel";my$eval;$eval=decode_base64(join"",@ARGV);eval$eval;'\' BASE64 BASE64;_EXIT_status=$?; mkdir -p ./.; rsync --protocol 30 --rsync-path=cd\ ./.TMPWORKDIR/./.\;\ rsync -rlDzR -essh\ -l\ parallel lo:./abc-file.out ./.;ssh -l parallel lo -- \(rm\ -f\ ./.TMPWORKDIR/abc-file\;\ sh\ -c\ \'rmdir\ ./.TMPWORKDIR/\ ./.parallel/tmp/\ ./.parallel/\ 2\>/dev/null\'\;rm\ -rf\ ./.TMPWORKDIR\;\);ssh -l parallel lo -- \(rm\ -f\ ./.TMPWORKDIR/abc-file.out\;\ sh\ -c\ \'rmdir\ ./.TMPWORKDIR/\ ./.parallel/tmp/\ ./.parallel/\ 2\>/dev/null\'\;rm\ -rf\ ./.TMPWORKDIR\;\);ssh -l parallel lo -- rm -rf .TMPWORKDIR; exit $_EXIT_status;
vendor://[[user][:password]@][host][:port]/[database[/table]
/bin/bash: vendor://[[user][:password]@][host][:port]/[database[/table]: No such file or directory
sqlite3:///%2Ftmp%2Fmydatabase/mytable
/bin/bash: sqlite3:///%2Ftmp%2Fmydatabase/mytable: No such file or directory
DBURL=sqlite3:///%2Ftmp%2Fmydatabase
DBURLTABLE=$DBURL/mytable
parallel --sqlandworker $DBURLTABLE echo ::: foo bar ::: baz quuz
foo baz
foo quuz
bar baz
bar quuz
sql $DBURL 'SELECT * FROM mytable ORDER BY Seq;'
Error:
SELECT * FROM mytable ORDER BY Seq; is not a valid DBURL
sql [-hnr] [--table-size] [--db-size] [-p pass-through] [-s string] dburl [command]
parallel --sql $DBURLTABLE echo ::: foo bar ::: baz quuz
parallel: Error: echo is not a valid DBURL
parallel --sqlworker $DBURLTABLE echo ::: foo bar ::: baz quuz
parallel: Error: echo is not a valid DBURL
cat num1000000 | parallel --pipe wc cat num1000000 | parallel --pipe wc
165668 165668 1048571 165668 165668 1048571
149796 149796 1048572 149796 149796 1048572
@ -789,7 +890,7 @@ JOB3
JOB4 JOB4
qux/, qux/,
END END
echo /foo, bar/, /baz, qux/, | parallel -kN1 --recstart '/' --pipe echo JOB{#}\;cat\;echo END echo /foo, bar/, /baz, qux/, | parallel -kN1 --recstart / --pipe echo JOB{#}\;cat\;echo END
JOB1 JOB1
/foo, barEND /foo, barEND
JOB2 JOB2
@ -799,13 +900,13 @@ JOB3
JOB4 JOB4
/, /,
END END
echo /foo, bar/, /baz, qux/, | parallel -kN1 --recend ', ' --recstart '/' --pipe echo JOB{#}\;cat\;echo END echo /foo, bar/, /baz, qux/, | parallel -kN1 --recend ', ' --recstart / --pipe echo JOB{#}\;cat\;echo END
JOB1 JOB1
/foo, bar/, END /foo, bar/, END
JOB2 JOB2
/baz, qux/, /baz, qux/,
END END
echo foo,bar,_baz,__qux, | parallel -kN1 --regexp --recend ',_+' --pipe echo JOB{#}\;cat\;echo END echo foo,bar,_baz,__qux, | parallel -kN1 --regexp --recend ,_+ --pipe echo JOB{#}\;cat\;echo END
JOB1 JOB1
foo,bar,_END foo,bar,_END
JOB2 JOB2
@ -813,7 +914,7 @@ baz,__END
JOB3 JOB3
qux, qux,
END END
echo foo,bar,_baz,__qux, | parallel -kN1 --rrs --regexp --recend ',_+' --pipe echo JOB{#}\;cat\;echo END echo foo,bar,_baz,__qux, | parallel -kN1 --rrs --regexp --recend ,_+ --pipe echo JOB{#}\;cat\;echo END
JOB1 JOB1
foo,barEND foo,barEND
JOB2 JOB2
@ -902,6 +1003,99 @@ Warning: unknown mime-type for "@ARGV\n" -- using "application/octet-stream"
Error: no such file "@ARGV\n" Error: no such file "@ARGV\n"
perl_echo foo bar perl_echo foo bar
/bin/bash: perl_echo: command not found /bin/bash: perl_echo: command not found
#!/usr/bin/parallel --shebang-wrap /usr/bin/perl
print "Arguments @ARGV\n";
Warning: unknown mime-type for "Arguments @ARGV\n" -- using "application/octet-stream"
Error: no such file "Arguments @ARGV\n"
#!/usr/bin/parallel --shebang-wrap /usr/bin/python
print 'Arguments', str(sys.argv)
/bin/bash: -c: line 3: syntax error near unexpected token `('
/bin/bash: -c: line 3: ` print 'Arguments', str(sys.argv)'
#!/usr/bin/parallel --shebang-wrap /bin/bash
echo Arguments "$@"
Arguments
#!/usr/bin/parallel --shebang-wrap /bin/csh
echo Arguments "$argv"
Arguments
#!/usr/bin/parallel --shebang-wrap /usr/bin/tclsh
puts "Arguments $argv"
/bin/bash: line 2: puts: command not found
#!/usr/bin/parallel --shebang-wrap /usr/bin/Rscript --vanilla --slave
args <- commandArgs(trailingOnly = TRUE)
print(paste("Arguments ",args))
/bin/bash: -c: line 2: syntax error near unexpected token `('
/bin/bash: -c: line 2: ` args <- commandArgs(trailingOnly = TRUE)'
#!/usr/bin/parallel --shebang-wrap ARG={} /usr/bin/gnuplot
print "Arguments ", system('echo $ARG')
/bin/bash: -c: line 2: syntax error near unexpected token `('
/bin/bash: -c: line 2: ` print "Arguments ", system('echo $ARG')'
#!/usr/bin/parallel --shebang-wrap /usr/bin/ruby
print "Arguments "
puts ARGV
Warning: unknown mime-type for "Arguments " -- using "application/octet-stream"
Error: no such file "Arguments "
/bin/bash: line 3: puts: command not found
#!/usr/bin/parallel --shebang-wrap /usr/bin/octave
printf ("Arguments");
arg_list = argv ();
for i = 1:nargin
printf (" %s", arg_list{i});
endfor
printf ("\n");
/bin/bash: -c: line 2: syntax error near unexpected token `"Arguments"'
/bin/bash: -c: line 2: ` printf ("Arguments");'
#!/usr/bin/parallel --shebang-wrap /usr/bin/clisp
(format t "~&~S~&" 'Arguments)
(format t "~&~S~&" *args*)
/bin/bash: -c: line 2: unexpected EOF while looking for matching `''
/bin/bash: -c: line 4: syntax error: unexpected end of file
#!/usr/bin/parallel --shebang-wrap /usr/bin/php
<?php
echo "Arguments";
foreach(array_slice($argv,1) as $v)
{
echo " $v";
}
echo "\n";
?>
Arguments
/bin/bash: line 1: ?php: No such file or directory
/bin/bash: -c: line 3: syntax error near unexpected token `array_slice'
/bin/bash: -c: line 3: ` foreach(array_slice($argv,1) as $v)'
#!/usr/bin/parallel --shebang-wrap /usr/bin/node
var myArgs = process.argv.slice(2);
console.log('Arguments ', myArgs);
/bin/bash: -c: line 0: syntax error near unexpected token `('
/bin/bash: -c: line 0: ` var myArgs = process.argv.slice(2);'
#!/usr/bin/parallel --shebang-wrap /usr/bin/lua
io.write "Arguments"
for a = 1, #arg do
io.write(" ")
io.write(arg[a])
end
print("")
/bin/bash: line 2: io.write: command not found
/bin/bash: -c: line 3: syntax error near unexpected token `='
/bin/bash: -c: line 3: ` for a = 1, #arg do'
#!/usr/bin/parallel --shebang-wrap ARGV={} /usr/bin/csharp
var argv = Environment.GetEnvironmentVariable("ARGV");
print("Arguments "+argv);
/bin/bash: -c: line 2: syntax error near unexpected token `('
/bin/bash: -c: line 2: ` var argv = Environment.GetEnvironmentVariable("ARGV");'
sem 'sleep 1; echo The first finished' && sem 'sleep 1; echo The first finished' &&
echo The first is now running in the background && echo The first is now running in the background &&
sem 'sleep 1; echo The second finished' && sem 'sleep 1; echo The second finished' &&
@ -910,7 +1104,6 @@ Error: no such file "@ARGV\n"
The first is now running in the background The first is now running in the background
The first finished The first finished
The second is now running in the background The second is now running in the background
The second finished
sem --fg 'sleep 1; echo The first finished' && sem --fg 'sleep 1; echo The first finished' &&
echo The first finished running in the foreground && echo The first finished running in the foreground &&
sem --fg 'sleep 1; echo The second finished' && sem --fg 'sleep 1; echo The second finished' &&
@ -918,7 +1111,6 @@ The second finished
sem --wait sem --wait
The first finished The first finished
The first finished running in the foreground The first finished running in the foreground
The second finished
The second finished running in the foreground The second finished running in the foreground
sem --id my_id -u 'echo First started; sleep 10; echo The first finished' sem --id my_id -u 'echo First started; sleep 10; echo The first finished'
First started First started
@ -932,7 +1124,6 @@ The first finished
First started First started
The first finished The first finished
Third started Third started
The second finished
Fourth started Fourth started
The third finished The third finished
The fourth finished The fourth finished
@ -983,18 +1174,6 @@ please cite:
This helps funding further development; AND IT WON'T COST YOU A CENT. This helps funding further development; AND IT WON'T COST YOU A CENT.
If you pay 10000 EUR you should feel free to use GNU Parallel without citing. If you pay 10000 EUR you should feel free to use GNU Parallel without citing.
parallel --version
GNU parallel VERSION
Copyright (C) 2007,2008,2009,2010,2011,2012,2013,2014,2015 Ole Tange
and Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
GNU parallel comes with no warranty.
Web site: http://www.gnu.org/software/parallel
When using programs that use GNU Parallel to process data for publication
please cite as described in 'parallel --bibtex'.
parallel --minversion VERSION && echo Your version is at least VERSION. parallel --minversion VERSION && echo Your version is at least VERSION.
VERSION VERSION
Your version is at least VERSION. Your version is at least VERSION.