mirror of
https://git.savannah.gnu.org/git/parallel.git
synced 2024-11-21 21:47:54 +00:00
parent
4c187c7729
commit
7f73c0fb2c
5
README
5
README
|
@ -125,9 +125,8 @@ publication please cite:
|
|||
Tange, O. (2022, February 22). GNU Parallel 20220222 ('Donetsk Luhansk').
|
||||
Zenodo. https://doi.org/10.5281/zenodo.6213471
|
||||
|
||||
Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015,
|
||||
2016, 2017, 2018, 2019, 2020, 2021 Ole Tange, http://ole.tange.dk and
|
||||
Free Software Foundation, Inc.
|
||||
Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free
|
||||
Software Foundation, Inc.
|
||||
|
||||
|
||||
= New versions =
|
||||
|
|
|
@ -266,6 +266,8 @@ Quote of the month:
|
|||
|
||||
New in this release:
|
||||
|
||||
* --sshlogin user:password@host is now supported by using sshpass.
|
||||
|
||||
<<>>
|
||||
|
||||
* Bug fixes and man page updates: Many options now have a 'See also' section.
|
||||
|
|
42
src/parallel
42
src/parallel
|
@ -2790,7 +2790,7 @@ sub open_json_csv() {
|
|||
::die_bug("Can't >/dev/null in csv: $!");
|
||||
$Global::fh{1} = $fd;
|
||||
$Global::fh{2} = $fd;
|
||||
} elsif($Global::csvsep) {
|
||||
} elsif($Global::csvsep or $Global::jsonout) {
|
||||
if(not open($Global::csv_fh,">",$opt::results)) {
|
||||
::error("Cannot open results file `$opt::results': ".
|
||||
"$!.");
|
||||
|
@ -3545,7 +3545,7 @@ sub init_run_jobs() {
|
|||
next;
|
||||
}
|
||||
if($sshlogin->too_fast_remote_login()) {
|
||||
# It has been too short since
|
||||
# It has been too short since last login
|
||||
next;
|
||||
}
|
||||
debug("run", $sshlogin->string(),
|
||||
|
@ -6473,7 +6473,13 @@ sub new($$) {
|
|||
if($s =~ s/([^@]+)@//) {
|
||||
my $userpw = $1;
|
||||
# user[:pass]
|
||||
if($userpw =~ s/:(.*)//) { $password = $1; }
|
||||
if($userpw =~ s/:(.*)//) {
|
||||
$password = $1;
|
||||
if(not ::which("sshpass")) {
|
||||
::error("--sshlogin with password requires sshpass installed");
|
||||
::wait_and_exit(255);
|
||||
}
|
||||
}
|
||||
$user = $userpw;
|
||||
}
|
||||
|
||||
|
@ -6499,7 +6505,6 @@ sub new($$) {
|
|||
} else {
|
||||
$sshcommand ||= $opt::ssh || $ENV{'PARALLEL_SSH'} || "ssh";
|
||||
}
|
||||
|
||||
# An SSHLogin is always in the hostgroup of its $string-name
|
||||
$hostgroups{$string} = 1;
|
||||
@Global::hostgroups{keys %hostgroups} = values %hostgroups;
|
||||
|
@ -6566,6 +6571,32 @@ sub sshcmd($) {
|
|||
if($self->{'port'}) { push @local, '-p',$self->{'port'}; }
|
||||
# [-l user]
|
||||
if($self->{'user'}) { push @local, '-l',$self->{'user'}; }
|
||||
if($opt::controlmaster) {
|
||||
# Use control_path to make ssh faster
|
||||
my $control_path = $self->control_path_dir()."/ssh-%r@%h:%p";
|
||||
push @local, "-S", $control_path;
|
||||
if(not $self->{'control_path'}{$control_path}++) {
|
||||
# Master is not running for this control_path
|
||||
# Start it
|
||||
my $pid = fork();
|
||||
if($pid) {
|
||||
$Global::sshmaster{$pid} ||= 1;
|
||||
} else {
|
||||
$SIG{'TERM'} = undef;
|
||||
# Run a sleep that outputs data, so it will discover
|
||||
# if the ssh connection closes.
|
||||
my $sleep = ::Q('$|=1;while(1){sleep 1;print "foo\n"}');
|
||||
# Ignore the 'foo' being printed
|
||||
open(STDOUT,">","/dev/null");
|
||||
# STDERR >/dev/null to ignore
|
||||
open(STDERR,">","/dev/null");
|
||||
open(STDIN,"<","/dev/null");
|
||||
exec(@local, "-MT", $self->{'host'}, "--",
|
||||
"perl", "-e", $sleep);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return "@local";
|
||||
}
|
||||
|
||||
|
@ -8615,7 +8646,7 @@ sub openoutputfiles($) {
|
|||
}
|
||||
# Return immediately because we do not need setting filenames
|
||||
return;
|
||||
} elsif($opt::results and not $Global::csvsep) {
|
||||
} elsif($opt::results and not $Global::csvsep and not $Global::jsonout) {
|
||||
# If --results, but not --results *.csv/*.tsv
|
||||
my $out = $self->{'commandline'}->results_out();
|
||||
my $seqname;
|
||||
|
@ -10579,7 +10610,6 @@ sub print($) {
|
|||
$self->starttime(), sprintf("%0.3f",$self->runtime()),
|
||||
$self->transfersize(), $self->returnsize(),
|
||||
$self->exitstatus(), $self->exitsignal(), $cmd,
|
||||
# \@$record_ref[1..$#$record_ref],
|
||||
(join ",",
|
||||
map { '"'.jsonquote($_).'"' } @$record_ref[1..$#$record_ref],
|
||||
),
|
||||
|
|
|
@ -3313,10 +3313,12 @@ See also: B<--no-run-if-empty> B<{}> B<--colsep>
|
|||
|
||||
=item B<-u>
|
||||
|
||||
Ungroup output. Output is printed as soon as possible and bypasses
|
||||
GNU B<parallel> internal processing. This may cause output from
|
||||
different commands to be mixed thus should only be used if you do not
|
||||
care about the output. Compare these:
|
||||
Ungroup output.
|
||||
|
||||
Output is printed as soon as possible and bypasses GNU B<parallel>
|
||||
internal processing. This may cause output from different commands to
|
||||
be mixed thus should only be used if you do not care about the
|
||||
output. Compare these:
|
||||
|
||||
seq 4 | parallel -j0 \
|
||||
'sleep {};echo -n start{};sleep {};echo {}end'
|
||||
|
|
|
@ -855,6 +855,17 @@ par_results() {
|
|||
rm -r $tmp "$tmp"-dir
|
||||
}
|
||||
|
||||
par_results_json() {
|
||||
echo "### --results test.json"
|
||||
tmp=$(mktemp -d)
|
||||
parallel -k --results "$tmp"/foo.json seq ::: 2 3 ::: 4 5
|
||||
cat "$tmp"/foo.json | perl -pe 's/\d+\.\d{3}/9.999/g'
|
||||
rm -r $tmp
|
||||
parallel -k --results -.json seq ::: 2 3 ::: 4 5 |
|
||||
perl -pe 's/\d+\.\d{3}/9.999/g'
|
||||
}
|
||||
|
||||
|
||||
par_testquote() {
|
||||
testquote() {
|
||||
printf '"#&/\n()*=?'"'" |
|
||||
|
|
|
@ -20,6 +20,41 @@ par_load_blocks() {
|
|||
grep -Ev 'processes took|Consider adjusting -j'
|
||||
}
|
||||
|
||||
par_round_robin_blocks() {
|
||||
echo "bug #49664: --round-robin does not complete"
|
||||
seq 20000000 | parallel -j8 --block 10M --round-robin --pipe wc -c | wc -l
|
||||
}
|
||||
|
||||
par_test_diff_roundrobin_k() {
|
||||
echo '### test there is difference on -k'
|
||||
. $(which env_parallel.bash)
|
||||
mytest() {
|
||||
K=$1
|
||||
doit() {
|
||||
# Sleep random time ever 1k line
|
||||
# to mix up which process gets the next block
|
||||
perl -ne '$t++ % 1000 or select(undef, undef, undef, rand()/10);print' |
|
||||
md5sum
|
||||
}
|
||||
export -f doit
|
||||
seq 1000000 |
|
||||
parallel --block 65K --pipe $K --roundrobin doit |
|
||||
sort
|
||||
}
|
||||
export -f mytest
|
||||
parset a,b,c mytest ::: -k -k ''
|
||||
# a == b and a != c or error
|
||||
if [ "$a" == "$b" ]; then
|
||||
if [ "$a" != "$c" ]; then
|
||||
echo OK
|
||||
else
|
||||
echo error a c
|
||||
fi
|
||||
else
|
||||
echo error a b
|
||||
fi
|
||||
}
|
||||
|
||||
par_compress_prg_fails() {
|
||||
echo '### bug #44546: If --compress-program fails: fail'
|
||||
doit() {
|
||||
|
|
|
@ -8,6 +8,40 @@
|
|||
# Each should be taking 1-3s and be possible to run in parallel
|
||||
# I.e.: No race conditions, no logins
|
||||
|
||||
|
||||
par_commandline_with_newline() {
|
||||
echo 'bug #51299: --retry-failed with command with newline'
|
||||
echo 'The format must remain the same'
|
||||
(
|
||||
parallel --jl - 'false "command
|
||||
with
|
||||
newlines"' ::: a b | sort
|
||||
|
||||
echo resume
|
||||
parallel --resume --jl - 'false "command
|
||||
with
|
||||
newlines"' ::: a b c | sort
|
||||
|
||||
echo resume-failed
|
||||
parallel --resume-failed --jl - 'false "command
|
||||
with
|
||||
newlines"' ::: a b c d | sort
|
||||
|
||||
echo retry-failed
|
||||
parallel --retry-failed --jl - 'false "command
|
||||
with
|
||||
newlines"' ::: a b c d e | sort
|
||||
) | perl -pe 's/\0/<null>/g;s/\d+/./g'
|
||||
}
|
||||
|
||||
par_compute_command_len() {
|
||||
echo "### Computing length of command line"
|
||||
seq 1 2 | parallel -k -N2 echo {1} {2}
|
||||
parallel --xapply -k -a <(seq 11 12) -a <(seq 1 3) echo
|
||||
parallel -k -C %+ echo '"{1}_{3}_{2}_{4}"' ::: 'a% c %%b' 'a%c% b %d'
|
||||
parallel -k -C %+ echo {4} ::: 'a% c %%b'
|
||||
}
|
||||
|
||||
par_skip_first_line() {
|
||||
tmpdir=$(mktemp)
|
||||
(echo `seq 10000`;echo MyHeader; seq 10) |
|
||||
|
@ -29,14 +63,6 @@ par_long_input() {
|
|||
parallel --colsep '\t' echo {-5} {-3//} {-2/.} '{=-1 s/.*\.// =}'
|
||||
}
|
||||
|
||||
par_plus_slot_replacement() {
|
||||
echo '### show {slot} {0%} {0#}'
|
||||
parallel -k --plus 'sleep 0.{%};echo {slot}=$PARALLEL_JOBSLOT={%}' ::: A B C
|
||||
parallel -j15 -k --plus 'echo Seq: {0#} {#}' ::: {1..100} | sort
|
||||
parallel -j15 -k --plus 'sleep 0.{}; echo Slot: {0%} {%}' ::: {1..100} |
|
||||
sort -u
|
||||
}
|
||||
|
||||
par_recend_recstart_hash() {
|
||||
echo "### bug #59843: --regexp --recstart '#' fails"
|
||||
(echo '#rec1'; echo 'bar'; echo '#rec2') |
|
||||
|
@ -50,7 +76,7 @@ par_recend_recstart_hash() {
|
|||
}
|
||||
|
||||
par_sqlandworker_uninstalled_dbd() {
|
||||
echo 'bug #56096: dbi-csv no such column'
|
||||
echo '### bug #56096: dbi-csv no such column'
|
||||
mkdir -p /tmp/parallel-bug-56096
|
||||
sudo mv /usr/share/perl5/DBD/CSV.pm /usr/share/perl5/DBD/CSV.pm.gone
|
||||
parallel --sqlandworker csv:///%2Ftmp%2Fparallel-bug-56096/mytable echo ::: must_fail
|
||||
|
@ -58,6 +84,14 @@ par_sqlandworker_uninstalled_dbd() {
|
|||
parallel --sqlandworker csv:///%2Ftmp%2Fparallel-bug-56096/mytable echo ::: works
|
||||
}
|
||||
|
||||
par_uninstalled_sshpass() {
|
||||
echo '### sshpass must be installed for --sshlogin user:pass@host'
|
||||
sshpass=$(command -v sshpass)
|
||||
sudo mv "$sshpass" "$sshpass".hidden
|
||||
parallel -S user:pass@host echo ::: must fail
|
||||
sudo mv "$sshpass".hidden "$sshpass"
|
||||
}
|
||||
|
||||
par_results_compress() {
|
||||
tmpdir=$(mktemp)
|
||||
rm -r "$tmpdir"
|
||||
|
|
|
@ -25,7 +25,7 @@ par_bin() {
|
|||
parallel --pipe --colsep '\t' --bin 2 wc | sort
|
||||
}
|
||||
|
||||
par_shard_a() {
|
||||
par_shard() {
|
||||
echo '### --shard'
|
||||
# Each of the 5 lines should match:
|
||||
# ##### ##### ######
|
||||
|
@ -40,9 +40,7 @@ par_shard_a() {
|
|||
}
|
||||
shard_on_col 1
|
||||
shard_on_col 2
|
||||
}
|
||||
|
||||
par_shard_b() {
|
||||
echo '### --shard'
|
||||
shard_on_col_name() {
|
||||
colname=$1
|
||||
|
@ -53,9 +51,7 @@ par_shard_b() {
|
|||
}
|
||||
shard_on_col_name A 1
|
||||
shard_on_col_name B 2
|
||||
}
|
||||
|
||||
par_shard_c() {
|
||||
echo '### --shard'
|
||||
shard_on_col_expr() {
|
||||
colexpr="$1"
|
||||
|
@ -66,9 +62,7 @@ par_shard_c() {
|
|||
}
|
||||
shard_on_col_expr '1 $_%=3' 1
|
||||
shard_on_col_expr '2 $_%=3' 2
|
||||
}
|
||||
|
||||
par_shard_d() {
|
||||
shard_on_col_name_expr() {
|
||||
colexpr="$1"
|
||||
col=$2
|
||||
|
@ -88,36 +82,6 @@ par_shard_d() {
|
|||
perl -pe 's/(.*\d{5,}){3}/OK/'
|
||||
}
|
||||
|
||||
par_test_diff_roundrobin_k() {
|
||||
echo '### test there is difference on -k'
|
||||
. $(which env_parallel.bash)
|
||||
mytest() {
|
||||
K=$1
|
||||
doit() {
|
||||
# Sleep random time ever 1k line
|
||||
# to mix up which process gets the next block
|
||||
perl -ne '$t++ % 1000 or select(undef, undef, undef, rand()/10);print' |
|
||||
md5sum
|
||||
}
|
||||
export -f doit
|
||||
seq 1000000 |
|
||||
parallel --block 65K --pipe $K --roundrobin doit |
|
||||
sort
|
||||
}
|
||||
export -f mytest
|
||||
parset a,b,c mytest ::: -k -k ''
|
||||
# a == b and a != c or error
|
||||
if [ "$a" == "$b" ]; then
|
||||
if [ "$a" != "$c" ]; then
|
||||
echo OK
|
||||
else
|
||||
echo error a c
|
||||
fi
|
||||
else
|
||||
echo error a b
|
||||
fi
|
||||
}
|
||||
|
||||
par_load_from_PARALLEL() {
|
||||
echo "### Test reading load from PARALLEL"
|
||||
export PARALLEL="--load 300%"
|
||||
|
@ -468,11 +432,6 @@ par_max_length_len_128k() {
|
|||
) | perl -pe 's/(\d\d+)\d\d\d/${1}xxx/g'
|
||||
}
|
||||
|
||||
par_round_robin_blocks() {
|
||||
echo "bug #49664: --round-robin does not complete"
|
||||
seq 20000000 | parallel -j8 --block 10M --round-robin --pipe wc -c | wc -l
|
||||
}
|
||||
|
||||
par_plus_dyn_repl() {
|
||||
echo "Dynamic replacement strings defined by --plus"
|
||||
|
||||
|
|
|
@ -232,12 +232,12 @@ par_sshdelay() {
|
|||
perl -ne 'print($_ > 1.30 ? "OK\n" : "Not OK\n")'
|
||||
}
|
||||
|
||||
par_compute_command_len() {
|
||||
echo "### Computing length of command line"
|
||||
seq 1 2 | parallel -k -N2 echo {1} {2}
|
||||
parallel --xapply -k -a <(seq 11 12) -a <(seq 1 3) echo
|
||||
parallel -k -C %+ echo '"{1}_{3}_{2}_{4}"' ::: 'a% c %%b' 'a%c% b %d'
|
||||
parallel -k -C %+ echo {4} ::: 'a% c %%b'
|
||||
par_plus_slot_replacement() {
|
||||
echo '### show {slot} {0%} {0#}'
|
||||
parallel -k --plus 'sleep 0.{%};echo {slot}=$PARALLEL_JOBSLOT={%}' ::: A B C
|
||||
parallel -j15 -k --plus 'echo Seq: {0#} {#}' ::: {1..100} | sort
|
||||
parallel -j15 -k --plus 'sleep 0.{}; echo Slot: {0%} {%}' ::: {1..100} |
|
||||
sort -u
|
||||
}
|
||||
|
||||
par_replacement_slashslash() {
|
||||
|
@ -468,31 +468,6 @@ par_sqlworker_hostname() {
|
|||
perl -pe "s/$hostname/<hostname>/g"
|
||||
}
|
||||
|
||||
par_commandline_with_newline() {
|
||||
echo 'bug #51299: --retry-failed with command with newline'
|
||||
echo 'The format must remain the same'
|
||||
(
|
||||
parallel --jl - 'false "command
|
||||
with
|
||||
newlines"' ::: a b | sort
|
||||
|
||||
echo resume
|
||||
parallel --resume --jl - 'false "command
|
||||
with
|
||||
newlines"' ::: a b c | sort
|
||||
|
||||
echo resume-failed
|
||||
parallel --resume-failed --jl - 'false "command
|
||||
with
|
||||
newlines"' ::: a b c d | sort
|
||||
|
||||
echo retry-failed
|
||||
parallel --retry-failed --jl - 'false "command
|
||||
with
|
||||
newlines"' ::: a b c d e | sort
|
||||
) | perl -pe 's/\0/<null>/g;s/\d+/./g'
|
||||
}
|
||||
|
||||
par_delay_human_readable() {
|
||||
# Test that you can use d h m s in --delay
|
||||
parallel --delay 0.1s echo ::: a b c
|
||||
|
|
|
@ -160,8 +160,6 @@ par_big_var_func_name() {
|
|||
perl -pe 's/\d{10,}.\d+ //g'
|
||||
}
|
||||
|
||||
#macsshlogin=ota@mac
|
||||
#macsshlogin=macosx.p
|
||||
macsshlogin=$(parallel --halt now,success=1 ssh {} echo {} ::: ota@mac macosx.p)
|
||||
|
||||
scp /usr/local/bin/parallel $macsshlogin:bin/
|
||||
|
@ -171,4 +169,5 @@ export -f $(compgen -A function | grep par_)
|
|||
compgen -A function |
|
||||
grep par_ |
|
||||
LC_ALL=C sort |
|
||||
env_parallel --timeout 3000% --tag -k -S 6/$macsshlogin 'PATH=$HOME/bin:$PATH; {}'
|
||||
env_parallel --timeout 3000% --tag -k -S 6/$macsshlogin 'PATH=$HOME/bin:$PATH; {}' |
|
||||
perl -pe 's/(\d+)\d\d\d/${1}XXX/g'
|
||||
|
|
|
@ -50,9 +50,10 @@ par_filter_hosts_no_ssh_nxserver() {
|
|||
|
||||
par_controlmaster_is_faster() {
|
||||
echo '### bug #41964: --controlmaster not seems to reuse OpenSSH connections to the same host'
|
||||
echo '-M should finish first - eventhough there are 2x jobs'
|
||||
(parallel -S $SSHLOGIN1 true ::: {1..20};
|
||||
echo No --controlmaster - finish last) &
|
||||
(parallel -M -S $SSHLOGIN1 true ::: {1..20};
|
||||
(parallel -M -S $SSHLOGIN1 true ::: {1..40};
|
||||
echo With --controlmaster - finish first) &
|
||||
wait
|
||||
}
|
||||
|
|
|
@ -902,6 +902,15 @@ par_results c
|
|||
par_results_arg_256 ### bug #42089: --results with arg > 256 chars (should be 1 char shorter)
|
||||
par_results_arg_256 1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456
|
||||
par_results_arg_256 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345
|
||||
par_results_json ### --results test.json
|
||||
par_results_json { "Seq": 1, "Host": ":", "Starttime": 9.999, "JobRuntime": 9.999, "Send": 0, "Receive": 6, "Exitval": 0, "Signal": 0, "Command": "seq 2 4", "V": [ "2","4" ], "Stdout": "2\u000a3\u000a4\u000a", "Stderr": "" }
|
||||
par_results_json { "Seq": 2, "Host": ":", "Starttime": 9.999, "JobRuntime": 9.999, "Send": 0, "Receive": 8, "Exitval": 0, "Signal": 0, "Command": "seq 2 5", "V": [ "2","5" ], "Stdout": "2\u000a3\u000a4\u000a5\u000a", "Stderr": "" }
|
||||
par_results_json { "Seq": 3, "Host": ":", "Starttime": 9.999, "JobRuntime": 9.999, "Send": 0, "Receive": 4, "Exitval": 0, "Signal": 0, "Command": "seq 3 4", "V": [ "3","4" ], "Stdout": "3\u000a4\u000a", "Stderr": "" }
|
||||
par_results_json { "Seq": 4, "Host": ":", "Starttime": 9.999, "JobRuntime": 9.999, "Send": 0, "Receive": 6, "Exitval": 0, "Signal": 0, "Command": "seq 3 5", "V": [ "3","5" ], "Stdout": "3\u000a4\u000a5\u000a", "Stderr": "" }
|
||||
par_results_json { "Seq": 1, "Host": ":", "Starttime": 9.999, "JobRuntime": 9.999, "Send": 0, "Receive": 6, "Exitval": 0, "Signal": 0, "Command": "seq 2 4", "V": [ "2","4" ], "Stdout": "2\u000a3\u000a4\u000a", "Stderr": "" }
|
||||
par_results_json { "Seq": 2, "Host": ":", "Starttime": 9.999, "JobRuntime": 9.999, "Send": 0, "Receive": 8, "Exitval": 0, "Signal": 0, "Command": "seq 2 5", "V": [ "2","5" ], "Stdout": "2\u000a3\u000a4\u000a5\u000a", "Stderr": "" }
|
||||
par_results_json { "Seq": 3, "Host": ":", "Starttime": 9.999, "JobRuntime": 9.999, "Send": 0, "Receive": 4, "Exitval": 0, "Signal": 0, "Command": "seq 3 4", "V": [ "3","4" ], "Stdout": "3\u000a4\u000a", "Stderr": "" }
|
||||
par_results_json { "Seq": 4, "Host": ":", "Starttime": 9.999, "JobRuntime": 9.999, "Send": 0, "Receive": 6, "Exitval": 0, "Signal": 0, "Command": "seq 3 5", "V": [ "3","5" ], "Stdout": "3\u000a4\u000a5\u000a", "Stderr": "" }
|
||||
par_resume_k ### --resume -k
|
||||
par_resume_k job0id
|
||||
par_resume_k job1id
|
||||
|
|
|
@ -901,6 +901,8 @@ par_retries_all_fail 5
|
|||
par_retries_all_fail 6
|
||||
par_retries_all_fail 7
|
||||
par_retries_all_fail 8
|
||||
par_round_robin_blocks bug #49664: --round-robin does not complete
|
||||
par_round_robin_blocks 8
|
||||
par_sem_2jobs ### Test semaphore 2 jobs running simultaneously
|
||||
par_sem_2jobs job1a 1
|
||||
par_sem_2jobs job2a 2
|
||||
|
@ -967,6 +969,8 @@ par_sockets_cores_threads ### Test --use-sockets-instead-of-threads
|
|||
par_sockets_cores_threads threads done
|
||||
par_sockets_cores_threads sockets done
|
||||
par_sockets_cores_threads Threads should complete first on machines with less than 8 sockets
|
||||
par_test_diff_roundrobin_k ### test there is difference on -k
|
||||
par_test_diff_roundrobin_k OK
|
||||
par_tmp_full ### Test --tmpdir running full. bug #40733 was caused by this
|
||||
par_tmp_full parallel: Error: Output is incomplete.
|
||||
par_tmp_full parallel: Error: Cannot append to buffer file in /tmp/shm/parallel.
|
||||
|
|
|
@ -86,6 +86,37 @@ par_bug37042 ### Bug introduce by fixing bug #37042
|
|||
par_bug37042 abc
|
||||
par_bug43654 bug #43654: --bar with command not using {} - only last output line
|
||||
par_bug43654
par_bug43654 [7m100% 1:0=0s 1 [0m[0m
|
||||
par_commandline_with_newline bug #51299: --retry-failed with command with newline
|
||||
par_commandline_with_newline The format must remain the same
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" a
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" b
|
||||
par_commandline_with_newline Seq Host Starttime JobRuntime Send Receive Exitval Signal Command
|
||||
par_commandline_with_newline resume
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" a
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" b
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" c
|
||||
par_commandline_with_newline Seq Host Starttime JobRuntime Send Receive Exitval Signal Command
|
||||
par_commandline_with_newline resume-failed
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" a
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" b
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" c
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" d
|
||||
par_commandline_with_newline Seq Host Starttime JobRuntime Send Receive Exitval Signal Command
|
||||
par_commandline_with_newline retry-failed
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" a
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" b
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" c
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" d
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" e
|
||||
par_commandline_with_newline Seq Host Starttime JobRuntime Send Receive Exitval Signal Command
|
||||
par_compute_command_len ### Computing length of command line
|
||||
par_compute_command_len 1 2
|
||||
par_compute_command_len 11 1
|
||||
par_compute_command_len 12 2
|
||||
par_compute_command_len 11 3
|
||||
par_compute_command_len a_b_c_
|
||||
par_compute_command_len a_b_c_d
|
||||
par_compute_command_len
|
||||
par_empty_string_command_line ### Test of ignore-empty string on :::
|
||||
par_empty_string_command_line foo
|
||||
par_empty_string_command_line ole
|
||||
|
@ -377,125 +408,6 @@ par_pipepart_block 17-20
|
|||
par_pipepart_block 18-20
|
||||
par_pipepart_block 19-20
|
||||
par_pipepart_block 20-20
|
||||
par_plus_slot_replacement ### show {slot} {0%} {0#}
|
||||
par_plus_slot_replacement 1=1=1
|
||||
par_plus_slot_replacement 2=2=2
|
||||
par_plus_slot_replacement 3=3=3
|
||||
par_plus_slot_replacement Seq: 001 1
|
||||
par_plus_slot_replacement Seq: 002 2
|
||||
par_plus_slot_replacement Seq: 003 3
|
||||
par_plus_slot_replacement Seq: 004 4
|
||||
par_plus_slot_replacement Seq: 005 5
|
||||
par_plus_slot_replacement Seq: 006 6
|
||||
par_plus_slot_replacement Seq: 007 7
|
||||
par_plus_slot_replacement Seq: 008 8
|
||||
par_plus_slot_replacement Seq: 009 9
|
||||
par_plus_slot_replacement Seq: 010 10
|
||||
par_plus_slot_replacement Seq: 011 11
|
||||
par_plus_slot_replacement Seq: 012 12
|
||||
par_plus_slot_replacement Seq: 013 13
|
||||
par_plus_slot_replacement Seq: 014 14
|
||||
par_plus_slot_replacement Seq: 015 15
|
||||
par_plus_slot_replacement Seq: 016 16
|
||||
par_plus_slot_replacement Seq: 017 17
|
||||
par_plus_slot_replacement Seq: 018 18
|
||||
par_plus_slot_replacement Seq: 019 19
|
||||
par_plus_slot_replacement Seq: 020 20
|
||||
par_plus_slot_replacement Seq: 021 21
|
||||
par_plus_slot_replacement Seq: 022 22
|
||||
par_plus_slot_replacement Seq: 023 23
|
||||
par_plus_slot_replacement Seq: 024 24
|
||||
par_plus_slot_replacement Seq: 025 25
|
||||
par_plus_slot_replacement Seq: 026 26
|
||||
par_plus_slot_replacement Seq: 027 27
|
||||
par_plus_slot_replacement Seq: 028 28
|
||||
par_plus_slot_replacement Seq: 029 29
|
||||
par_plus_slot_replacement Seq: 030 30
|
||||
par_plus_slot_replacement Seq: 031 31
|
||||
par_plus_slot_replacement Seq: 032 32
|
||||
par_plus_slot_replacement Seq: 033 33
|
||||
par_plus_slot_replacement Seq: 034 34
|
||||
par_plus_slot_replacement Seq: 035 35
|
||||
par_plus_slot_replacement Seq: 036 36
|
||||
par_plus_slot_replacement Seq: 037 37
|
||||
par_plus_slot_replacement Seq: 038 38
|
||||
par_plus_slot_replacement Seq: 039 39
|
||||
par_plus_slot_replacement Seq: 040 40
|
||||
par_plus_slot_replacement Seq: 041 41
|
||||
par_plus_slot_replacement Seq: 042 42
|
||||
par_plus_slot_replacement Seq: 043 43
|
||||
par_plus_slot_replacement Seq: 044 44
|
||||
par_plus_slot_replacement Seq: 045 45
|
||||
par_plus_slot_replacement Seq: 046 46
|
||||
par_plus_slot_replacement Seq: 047 47
|
||||
par_plus_slot_replacement Seq: 048 48
|
||||
par_plus_slot_replacement Seq: 049 49
|
||||
par_plus_slot_replacement Seq: 050 50
|
||||
par_plus_slot_replacement Seq: 051 51
|
||||
par_plus_slot_replacement Seq: 052 52
|
||||
par_plus_slot_replacement Seq: 053 53
|
||||
par_plus_slot_replacement Seq: 054 54
|
||||
par_plus_slot_replacement Seq: 055 55
|
||||
par_plus_slot_replacement Seq: 056 56
|
||||
par_plus_slot_replacement Seq: 057 57
|
||||
par_plus_slot_replacement Seq: 058 58
|
||||
par_plus_slot_replacement Seq: 059 59
|
||||
par_plus_slot_replacement Seq: 060 60
|
||||
par_plus_slot_replacement Seq: 061 61
|
||||
par_plus_slot_replacement Seq: 062 62
|
||||
par_plus_slot_replacement Seq: 063 63
|
||||
par_plus_slot_replacement Seq: 064 64
|
||||
par_plus_slot_replacement Seq: 065 65
|
||||
par_plus_slot_replacement Seq: 066 66
|
||||
par_plus_slot_replacement Seq: 067 67
|
||||
par_plus_slot_replacement Seq: 068 68
|
||||
par_plus_slot_replacement Seq: 069 69
|
||||
par_plus_slot_replacement Seq: 070 70
|
||||
par_plus_slot_replacement Seq: 071 71
|
||||
par_plus_slot_replacement Seq: 072 72
|
||||
par_plus_slot_replacement Seq: 073 73
|
||||
par_plus_slot_replacement Seq: 074 74
|
||||
par_plus_slot_replacement Seq: 075 75
|
||||
par_plus_slot_replacement Seq: 076 76
|
||||
par_plus_slot_replacement Seq: 077 77
|
||||
par_plus_slot_replacement Seq: 078 78
|
||||
par_plus_slot_replacement Seq: 079 79
|
||||
par_plus_slot_replacement Seq: 080 80
|
||||
par_plus_slot_replacement Seq: 081 81
|
||||
par_plus_slot_replacement Seq: 082 82
|
||||
par_plus_slot_replacement Seq: 083 83
|
||||
par_plus_slot_replacement Seq: 084 84
|
||||
par_plus_slot_replacement Seq: 085 85
|
||||
par_plus_slot_replacement Seq: 086 86
|
||||
par_plus_slot_replacement Seq: 087 87
|
||||
par_plus_slot_replacement Seq: 088 88
|
||||
par_plus_slot_replacement Seq: 089 89
|
||||
par_plus_slot_replacement Seq: 090 90
|
||||
par_plus_slot_replacement Seq: 091 91
|
||||
par_plus_slot_replacement Seq: 092 92
|
||||
par_plus_slot_replacement Seq: 093 93
|
||||
par_plus_slot_replacement Seq: 094 94
|
||||
par_plus_slot_replacement Seq: 095 95
|
||||
par_plus_slot_replacement Seq: 096 96
|
||||
par_plus_slot_replacement Seq: 097 97
|
||||
par_plus_slot_replacement Seq: 098 98
|
||||
par_plus_slot_replacement Seq: 099 99
|
||||
par_plus_slot_replacement Seq: 100 100
|
||||
par_plus_slot_replacement Slot: 01 1
|
||||
par_plus_slot_replacement Slot: 02 2
|
||||
par_plus_slot_replacement Slot: 03 3
|
||||
par_plus_slot_replacement Slot: 04 4
|
||||
par_plus_slot_replacement Slot: 05 5
|
||||
par_plus_slot_replacement Slot: 06 6
|
||||
par_plus_slot_replacement Slot: 07 7
|
||||
par_plus_slot_replacement Slot: 08 8
|
||||
par_plus_slot_replacement Slot: 09 9
|
||||
par_plus_slot_replacement Slot: 10 10
|
||||
par_plus_slot_replacement Slot: 11 11
|
||||
par_plus_slot_replacement Slot: 12 12
|
||||
par_plus_slot_replacement Slot: 13 13
|
||||
par_plus_slot_replacement Slot: 14 14
|
||||
par_plus_slot_replacement Slot: 15 15
|
||||
par_profiles_with_space ### bug #42902: profiles containing arguments with space
|
||||
par_profiles_with_space /bin/bash=/bin/bash
|
||||
par_profiles_with_space echo '/bin/bash=/bin/bash'
|
||||
|
@ -894,7 +806,7 @@ par_sql_colsep b B 1 11 b B 2 22 b B 3 33
|
|||
par_sql_colsep b B 4 44 b B 5 55 b B 6 66
|
||||
par_sql_colsep c C 1 11 c C 2 22 c C 3 33
|
||||
par_sql_colsep c C 4 44 c C 5 55 c C 6 66
|
||||
par_sqlandworker_uninstalled_dbd bug #56096: dbi-csv no such column
|
||||
par_sqlandworker_uninstalled_dbd ### bug #56096: dbi-csv no such column
|
||||
par_sqlandworker_uninstalled_dbd parallel: Error: CSV not supported. Are you missing a perl DBD::CSV module?
|
||||
par_sqlandworker_uninstalled_dbd works
|
||||
par_test_E ### Test -E
|
||||
|
@ -1086,3 +998,5 @@ par_trailing_space_line_continuation ### Test of trailing space continuation wit
|
|||
par_trailing_space_line_continuation foo ole
|
||||
par_trailing_space_line_continuation foo ole
|
||||
par_trailing_space_line_continuation foo ole
|
||||
par_uninstalled_sshpass ### sshpass must be installed for --sshlogin user:pass@host
|
||||
par_uninstalled_sshpass parallel: Error: --sshlogin with password requires sshpass installed
|
||||
|
|
|
@ -1674,99 +1674,97 @@ par_race_condition1 7
|
|||
par_race_condition1 8
|
||||
par_race_condition1 9
|
||||
par_race_condition1 10
|
||||
par_round_robin_blocks bug #49664: --round-robin does not complete
|
||||
par_round_robin_blocks 8
|
||||
par_shard_a ### --shard
|
||||
par_shard_a OK
|
||||
par_shard_a OK
|
||||
par_shard_a OK
|
||||
par_shard_a OK
|
||||
par_shard_a OK
|
||||
par_shard_a 10 1
|
||||
par_shard_a 10 2
|
||||
par_shard_a 10 3
|
||||
par_shard_a 10 4
|
||||
par_shard_a 10 5
|
||||
par_shard_a 10 6
|
||||
par_shard_a 10 7
|
||||
par_shard_a 10 8
|
||||
par_shard_a 10 9
|
||||
par_shard_a 9 0
|
||||
par_shard_a 9 1
|
||||
par_shard_a 9 2
|
||||
par_shard_a 9 3
|
||||
par_shard_a 9 4
|
||||
par_shard_a 9 5
|
||||
par_shard_a 9 6
|
||||
par_shard_a 9 7
|
||||
par_shard_a 9 8
|
||||
par_shard_a 9 9
|
||||
par_shard_b ### --shard
|
||||
par_shard_b 10 1
|
||||
par_shard_b 10 2
|
||||
par_shard_b 10 3
|
||||
par_shard_b 10 4
|
||||
par_shard_b 10 5
|
||||
par_shard_b 10 6
|
||||
par_shard_b 10 7
|
||||
par_shard_b 10 8
|
||||
par_shard_b 10 9
|
||||
par_shard_b 9 0
|
||||
par_shard_b 9 1
|
||||
par_shard_b 9 2
|
||||
par_shard_b 9 3
|
||||
par_shard_b 9 4
|
||||
par_shard_b 9 5
|
||||
par_shard_b 9 6
|
||||
par_shard_b 9 7
|
||||
par_shard_b 9 8
|
||||
par_shard_b 9 9
|
||||
par_shard_c ### --shard
|
||||
par_shard_c 10 1
|
||||
par_shard_c 10 2
|
||||
par_shard_c 10 3
|
||||
par_shard_c 10 4
|
||||
par_shard_c 10 5
|
||||
par_shard_c 10 6
|
||||
par_shard_c 10 7
|
||||
par_shard_c 10 8
|
||||
par_shard_c 10 9
|
||||
par_shard_c 2 c1
|
||||
par_shard_c 9 0
|
||||
par_shard_c 9 1
|
||||
par_shard_c 9 2
|
||||
par_shard_c 9 3
|
||||
par_shard_c 9 4
|
||||
par_shard_c 9 5
|
||||
par_shard_c 9 6
|
||||
par_shard_c 9 7
|
||||
par_shard_c 9 8
|
||||
par_shard_c 9 9
|
||||
par_shard_c 2 c2
|
||||
par_shard_d 10 1
|
||||
par_shard_d 10 2
|
||||
par_shard_d 10 3
|
||||
par_shard_d 10 4
|
||||
par_shard_d 10 5
|
||||
par_shard_d 10 6
|
||||
par_shard_d 10 7
|
||||
par_shard_d 10 8
|
||||
par_shard_d 10 9
|
||||
par_shard_d 2 c1
|
||||
par_shard_d 9 0
|
||||
par_shard_d 9 1
|
||||
par_shard_d 9 2
|
||||
par_shard_d 9 3
|
||||
par_shard_d 9 4
|
||||
par_shard_d 9 5
|
||||
par_shard_d 9 6
|
||||
par_shard_d 9 7
|
||||
par_shard_d 9 8
|
||||
par_shard_d 9 9
|
||||
par_shard_d 2 c2
|
||||
par_shard_d *** broken
|
||||
par_shard_d parallel: Error: --shard requires --jobs to be higher than the number of
|
||||
par_shard_d parallel: Error: arguments. Increase --jobs.
|
||||
par_shard ### --shard
|
||||
par_shard OK
|
||||
par_shard OK
|
||||
par_shard OK
|
||||
par_shard OK
|
||||
par_shard OK
|
||||
par_shard 10 1
|
||||
par_shard 10 2
|
||||
par_shard 10 3
|
||||
par_shard 10 4
|
||||
par_shard 10 5
|
||||
par_shard 10 6
|
||||
par_shard 10 7
|
||||
par_shard 10 8
|
||||
par_shard 10 9
|
||||
par_shard 9 0
|
||||
par_shard 9 1
|
||||
par_shard 9 2
|
||||
par_shard 9 3
|
||||
par_shard 9 4
|
||||
par_shard 9 5
|
||||
par_shard 9 6
|
||||
par_shard 9 7
|
||||
par_shard 9 8
|
||||
par_shard 9 9
|
||||
par_shard ### --shard
|
||||
par_shard 10 1
|
||||
par_shard 10 2
|
||||
par_shard 10 3
|
||||
par_shard 10 4
|
||||
par_shard 10 5
|
||||
par_shard 10 6
|
||||
par_shard 10 7
|
||||
par_shard 10 8
|
||||
par_shard 10 9
|
||||
par_shard 9 0
|
||||
par_shard 9 1
|
||||
par_shard 9 2
|
||||
par_shard 9 3
|
||||
par_shard 9 4
|
||||
par_shard 9 5
|
||||
par_shard 9 6
|
||||
par_shard 9 7
|
||||
par_shard 9 8
|
||||
par_shard 9 9
|
||||
par_shard ### --shard
|
||||
par_shard 10 1
|
||||
par_shard 10 2
|
||||
par_shard 10 3
|
||||
par_shard 10 4
|
||||
par_shard 10 5
|
||||
par_shard 10 6
|
||||
par_shard 10 7
|
||||
par_shard 10 8
|
||||
par_shard 10 9
|
||||
par_shard 2 c1
|
||||
par_shard 9 0
|
||||
par_shard 9 1
|
||||
par_shard 9 2
|
||||
par_shard 9 3
|
||||
par_shard 9 4
|
||||
par_shard 9 5
|
||||
par_shard 9 6
|
||||
par_shard 9 7
|
||||
par_shard 9 8
|
||||
par_shard 9 9
|
||||
par_shard 2 c2
|
||||
par_shard 10 1
|
||||
par_shard 10 2
|
||||
par_shard 10 3
|
||||
par_shard 10 4
|
||||
par_shard 10 5
|
||||
par_shard 10 6
|
||||
par_shard 10 7
|
||||
par_shard 10 8
|
||||
par_shard 10 9
|
||||
par_shard 2 c1
|
||||
par_shard 9 0
|
||||
par_shard 9 1
|
||||
par_shard 9 2
|
||||
par_shard 9 3
|
||||
par_shard 9 4
|
||||
par_shard 9 5
|
||||
par_shard 9 6
|
||||
par_shard 9 7
|
||||
par_shard 9 8
|
||||
par_shard 9 9
|
||||
par_shard 2 c2
|
||||
par_shard *** broken
|
||||
par_shard parallel: Error: --shard requires --jobs to be higher than the number of
|
||||
par_shard parallel: Error: arguments. Increase --jobs.
|
||||
par_sighup ### Test SIGHUP
|
||||
par_sighup 1
|
||||
par_sighup 10
|
||||
|
@ -1845,5 +1843,3 @@ par_test_detected_shell test_known_shell_pipe static-sh Global::shell /usr/bin/s
|
|||
par_test_detected_shell test_known_shell_pipe tcsh Global::shell /usr/bin/tcsh
|
||||
par_test_detected_shell test_known_shell_pipe yash Global::shell /usr/bin/yash
|
||||
par_test_detected_shell test_known_shell_pipe zsh Global::shell /usr/bin/zsh
|
||||
par_test_diff_roundrobin_k ### test there is difference on -k
|
||||
par_test_diff_roundrobin_k OK
|
||||
|
|
|
@ -22,37 +22,6 @@ par_children_receive_sig parallel: Warning: This job was killed because it timed
|
|||
par_children_receive_sig parallel: Warning: show_signals ''
|
||||
par_children_receive_sig Got INT
|
||||
par_children_receive_sig Got TERM
|
||||
par_commandline_with_newline bug #51299: --retry-failed with command with newline
|
||||
par_commandline_with_newline The format must remain the same
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" a
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" b
|
||||
par_commandline_with_newline Seq Host Starttime JobRuntime Send Receive Exitval Signal Command
|
||||
par_commandline_with_newline resume
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" a
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" b
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" c
|
||||
par_commandline_with_newline Seq Host Starttime JobRuntime Send Receive Exitval Signal Command
|
||||
par_commandline_with_newline resume-failed
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" a
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" b
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" c
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" d
|
||||
par_commandline_with_newline Seq Host Starttime JobRuntime Send Receive Exitval Signal Command
|
||||
par_commandline_with_newline retry-failed
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" a
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" b
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" c
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" d
|
||||
par_commandline_with_newline . : ... ... . . . . false "command<null>with<null>newlines" e
|
||||
par_commandline_with_newline Seq Host Starttime JobRuntime Send Receive Exitval Signal Command
|
||||
par_compute_command_len ### Computing length of command line
|
||||
par_compute_command_len 1 2
|
||||
par_compute_command_len 11 1
|
||||
par_compute_command_len 12 2
|
||||
par_compute_command_len 11 3
|
||||
par_compute_command_len a_b_c_
|
||||
par_compute_command_len a_b_c_d
|
||||
par_compute_command_len
|
||||
par_delay ### Test --delay
|
||||
par_delay More than 3.3 secs: OK
|
||||
par_delay_halt_soon bug #59893: --halt soon doesn't work with --delay
|
||||
|
@ -401,6 +370,125 @@ par_pipe_regexp_non_quoted Start
|
|||
par_pipe_regexp_non_quoted Start this line is a false Start line
|
||||
par_pipe_regexp_non_quoted End this line is a false End line
|
||||
par_pipe_regexp_non_quoted End
|
||||
par_plus_slot_replacement ### show {slot} {0%} {0#}
|
||||
par_plus_slot_replacement 1=1=1
|
||||
par_plus_slot_replacement 2=2=2
|
||||
par_plus_slot_replacement 3=3=3
|
||||
par_plus_slot_replacement Seq: 001 1
|
||||
par_plus_slot_replacement Seq: 002 2
|
||||
par_plus_slot_replacement Seq: 003 3
|
||||
par_plus_slot_replacement Seq: 004 4
|
||||
par_plus_slot_replacement Seq: 005 5
|
||||
par_plus_slot_replacement Seq: 006 6
|
||||
par_plus_slot_replacement Seq: 007 7
|
||||
par_plus_slot_replacement Seq: 008 8
|
||||
par_plus_slot_replacement Seq: 009 9
|
||||
par_plus_slot_replacement Seq: 010 10
|
||||
par_plus_slot_replacement Seq: 011 11
|
||||
par_plus_slot_replacement Seq: 012 12
|
||||
par_plus_slot_replacement Seq: 013 13
|
||||
par_plus_slot_replacement Seq: 014 14
|
||||
par_plus_slot_replacement Seq: 015 15
|
||||
par_plus_slot_replacement Seq: 016 16
|
||||
par_plus_slot_replacement Seq: 017 17
|
||||
par_plus_slot_replacement Seq: 018 18
|
||||
par_plus_slot_replacement Seq: 019 19
|
||||
par_plus_slot_replacement Seq: 020 20
|
||||
par_plus_slot_replacement Seq: 021 21
|
||||
par_plus_slot_replacement Seq: 022 22
|
||||
par_plus_slot_replacement Seq: 023 23
|
||||
par_plus_slot_replacement Seq: 024 24
|
||||
par_plus_slot_replacement Seq: 025 25
|
||||
par_plus_slot_replacement Seq: 026 26
|
||||
par_plus_slot_replacement Seq: 027 27
|
||||
par_plus_slot_replacement Seq: 028 28
|
||||
par_plus_slot_replacement Seq: 029 29
|
||||
par_plus_slot_replacement Seq: 030 30
|
||||
par_plus_slot_replacement Seq: 031 31
|
||||
par_plus_slot_replacement Seq: 032 32
|
||||
par_plus_slot_replacement Seq: 033 33
|
||||
par_plus_slot_replacement Seq: 034 34
|
||||
par_plus_slot_replacement Seq: 035 35
|
||||
par_plus_slot_replacement Seq: 036 36
|
||||
par_plus_slot_replacement Seq: 037 37
|
||||
par_plus_slot_replacement Seq: 038 38
|
||||
par_plus_slot_replacement Seq: 039 39
|
||||
par_plus_slot_replacement Seq: 040 40
|
||||
par_plus_slot_replacement Seq: 041 41
|
||||
par_plus_slot_replacement Seq: 042 42
|
||||
par_plus_slot_replacement Seq: 043 43
|
||||
par_plus_slot_replacement Seq: 044 44
|
||||
par_plus_slot_replacement Seq: 045 45
|
||||
par_plus_slot_replacement Seq: 046 46
|
||||
par_plus_slot_replacement Seq: 047 47
|
||||
par_plus_slot_replacement Seq: 048 48
|
||||
par_plus_slot_replacement Seq: 049 49
|
||||
par_plus_slot_replacement Seq: 050 50
|
||||
par_plus_slot_replacement Seq: 051 51
|
||||
par_plus_slot_replacement Seq: 052 52
|
||||
par_plus_slot_replacement Seq: 053 53
|
||||
par_plus_slot_replacement Seq: 054 54
|
||||
par_plus_slot_replacement Seq: 055 55
|
||||
par_plus_slot_replacement Seq: 056 56
|
||||
par_plus_slot_replacement Seq: 057 57
|
||||
par_plus_slot_replacement Seq: 058 58
|
||||
par_plus_slot_replacement Seq: 059 59
|
||||
par_plus_slot_replacement Seq: 060 60
|
||||
par_plus_slot_replacement Seq: 061 61
|
||||
par_plus_slot_replacement Seq: 062 62
|
||||
par_plus_slot_replacement Seq: 063 63
|
||||
par_plus_slot_replacement Seq: 064 64
|
||||
par_plus_slot_replacement Seq: 065 65
|
||||
par_plus_slot_replacement Seq: 066 66
|
||||
par_plus_slot_replacement Seq: 067 67
|
||||
par_plus_slot_replacement Seq: 068 68
|
||||
par_plus_slot_replacement Seq: 069 69
|
||||
par_plus_slot_replacement Seq: 070 70
|
||||
par_plus_slot_replacement Seq: 071 71
|
||||
par_plus_slot_replacement Seq: 072 72
|
||||
par_plus_slot_replacement Seq: 073 73
|
||||
par_plus_slot_replacement Seq: 074 74
|
||||
par_plus_slot_replacement Seq: 075 75
|
||||
par_plus_slot_replacement Seq: 076 76
|
||||
par_plus_slot_replacement Seq: 077 77
|
||||
par_plus_slot_replacement Seq: 078 78
|
||||
par_plus_slot_replacement Seq: 079 79
|
||||
par_plus_slot_replacement Seq: 080 80
|
||||
par_plus_slot_replacement Seq: 081 81
|
||||
par_plus_slot_replacement Seq: 082 82
|
||||
par_plus_slot_replacement Seq: 083 83
|
||||
par_plus_slot_replacement Seq: 084 84
|
||||
par_plus_slot_replacement Seq: 085 85
|
||||
par_plus_slot_replacement Seq: 086 86
|
||||
par_plus_slot_replacement Seq: 087 87
|
||||
par_plus_slot_replacement Seq: 088 88
|
||||
par_plus_slot_replacement Seq: 089 89
|
||||
par_plus_slot_replacement Seq: 090 90
|
||||
par_plus_slot_replacement Seq: 091 91
|
||||
par_plus_slot_replacement Seq: 092 92
|
||||
par_plus_slot_replacement Seq: 093 93
|
||||
par_plus_slot_replacement Seq: 094 94
|
||||
par_plus_slot_replacement Seq: 095 95
|
||||
par_plus_slot_replacement Seq: 096 96
|
||||
par_plus_slot_replacement Seq: 097 97
|
||||
par_plus_slot_replacement Seq: 098 98
|
||||
par_plus_slot_replacement Seq: 099 99
|
||||
par_plus_slot_replacement Seq: 100 100
|
||||
par_plus_slot_replacement Slot: 01 1
|
||||
par_plus_slot_replacement Slot: 02 2
|
||||
par_plus_slot_replacement Slot: 03 3
|
||||
par_plus_slot_replacement Slot: 04 4
|
||||
par_plus_slot_replacement Slot: 05 5
|
||||
par_plus_slot_replacement Slot: 06 6
|
||||
par_plus_slot_replacement Slot: 07 7
|
||||
par_plus_slot_replacement Slot: 08 8
|
||||
par_plus_slot_replacement Slot: 09 9
|
||||
par_plus_slot_replacement Slot: 10 10
|
||||
par_plus_slot_replacement Slot: 11 11
|
||||
par_plus_slot_replacement Slot: 12 12
|
||||
par_plus_slot_replacement Slot: 13 13
|
||||
par_plus_slot_replacement Slot: 14 14
|
||||
par_plus_slot_replacement Slot: 15 15
|
||||
par_prefix_for_L_n_N_s Must give xxx000 args
|
||||
par_prefix_for_L_n_N_s 1000
|
||||
par_prefix_for_L_n_N_s 1000
|
||||
|
|
|
@ -1,100 +1,100 @@
|
|||
par_big_func 1 3824 91776
|
||||
par_big_func 1 3824 91776
|
||||
par_big_func 1 3824 91776
|
||||
par_big_func 1 1864 44676
|
||||
par_big_func_name 1 820 19680
|
||||
par_big_func_name 1 820 19680
|
||||
par_big_func_name 1 820 19680
|
||||
par_big_func_name 1 820 19680
|
||||
par_big_func_name 1 820 19680
|
||||
par_big_func_name 1 820 19680
|
||||
par_big_func_name 1 80 1920
|
||||
par_big_var_func_name 1 816 19584
|
||||
par_big_var_func_name 1 816 19584
|
||||
par_big_var_func_name 1 816 19584
|
||||
par_big_var_func_name 1 816 19584
|
||||
par_big_var_func_name 1 816 19584
|
||||
par_big_var_func_name 1 816 19584
|
||||
par_big_var_func_name 1 816 19584
|
||||
par_big_var_func_name 1 816 19584
|
||||
par_big_var_func_name 1 816 19584
|
||||
par_big_var_func_name 1 816 19584
|
||||
par_big_var_func_name 1 816 19584
|
||||
par_big_var_func_name 1 816 19584
|
||||
par_big_var_func_name 1 816 19584
|
||||
par_big_var_func_name 1 816 19584
|
||||
par_big_var_func_name 1 816 19584
|
||||
par_big_var_func_name 1 816 19584
|
||||
par_big_var_func_name 1 280 6660
|
||||
par_many_args 1 3148 6296
|
||||
par_many_args 1 3148 6296
|
||||
par_many_args 1 3148 6296
|
||||
par_many_args 1 3148 6296
|
||||
par_many_args 1 3148 6296
|
||||
par_many_args 1 3148 6296
|
||||
par_many_args 1 1112 2224
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 232 5568
|
||||
par_many_func 1 172 4100
|
||||
par_many_var 1 980 23520
|
||||
par_many_var 1 980 23520
|
||||
par_many_var 1 980 23520
|
||||
par_many_var 1 980 23520
|
||||
par_many_var 1 980 23520
|
||||
par_many_var 1 980 23520
|
||||
par_many_var 1 788 18884
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 264 6336
|
||||
par_many_var_big_func 1 68 1604
|
||||
par_many_var_func 1 2480 59520
|
||||
par_many_var_func 1 2480 59520
|
||||
par_many_var_func 1 1708 40964
|
||||
par_big_func 1 3XXX 91XXX
|
||||
par_big_func 1 3XXX 91XXX
|
||||
par_big_func 1 3XXX 91XXX
|
||||
par_big_func 1 1XXX 44XXX
|
||||
par_big_func_name 1 820 19XXX
|
||||
par_big_func_name 1 820 19XXX
|
||||
par_big_func_name 1 820 19XXX
|
||||
par_big_func_name 1 820 19XXX
|
||||
par_big_func_name 1 820 19XXX
|
||||
par_big_func_name 1 820 19XXX
|
||||
par_big_func_name 1 80 1XXX
|
||||
par_big_var_func_name 1 816 19XXX
|
||||
par_big_var_func_name 1 816 19XXX
|
||||
par_big_var_func_name 1 816 19XXX
|
||||
par_big_var_func_name 1 816 19XXX
|
||||
par_big_var_func_name 1 816 19XXX
|
||||
par_big_var_func_name 1 816 19XXX
|
||||
par_big_var_func_name 1 816 19XXX
|
||||
par_big_var_func_name 1 816 19XXX
|
||||
par_big_var_func_name 1 816 19XXX
|
||||
par_big_var_func_name 1 816 19XXX
|
||||
par_big_var_func_name 1 816 19XXX
|
||||
par_big_var_func_name 1 816 19XXX
|
||||
par_big_var_func_name 1 816 19XXX
|
||||
par_big_var_func_name 1 816 19XXX
|
||||
par_big_var_func_name 1 816 19XXX
|
||||
par_big_var_func_name 1 816 19XXX
|
||||
par_big_var_func_name 1 280 6XXX
|
||||
par_many_args 1 3XXX 6XXX
|
||||
par_many_args 1 3XXX 6XXX
|
||||
par_many_args 1 3XXX 6XXX
|
||||
par_many_args 1 3XXX 6XXX
|
||||
par_many_args 1 3XXX 6XXX
|
||||
par_many_args 1 3XXX 6XXX
|
||||
par_many_args 1 1XXX 2XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 232 5XXX
|
||||
par_many_func 1 172 4XXX
|
||||
par_many_var 1 980 23XXX
|
||||
par_many_var 1 980 23XXX
|
||||
par_many_var 1 980 23XXX
|
||||
par_many_var 1 980 23XXX
|
||||
par_many_var 1 980 23XXX
|
||||
par_many_var 1 980 23XXX
|
||||
par_many_var 1 788 18XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 264 6XXX
|
||||
par_many_var_big_func 1 68 1XXX
|
||||
par_many_var_func 1 2XXX 59XXX
|
||||
par_many_var_func 1 2XXX 59XXX
|
||||
par_many_var_func 1 1XXX 40XXX
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
par_controlmaster_is_faster ### bug #41964: --controlmaster not seems to reuse OpenSSH connections to the same host
|
||||
par_controlmaster_is_faster -M should finish first - eventhough there are 2x jobs
|
||||
par_controlmaster_is_faster With --controlmaster - finish first
|
||||
par_controlmaster_is_faster No --controlmaster - finish last
|
||||
par_filter_hosts_different_errors ### --filter-hosts - OK, non-such-user, connection refused, wrong host
|
||||
|
|
Loading…
Reference in a new issue