mirror of
https://git.savannah.gnu.org/git/parallel.git
synced 2024-12-22 12:47:54 +00:00
parallel: Re-fixed bug #37042: -J foo is taken from the whole command line - not just the part before the command
This commit is contained in:
parent
ea151d0837
commit
c1f6354375
|
@ -1,17 +1,9 @@
|
|||
Aliases for bash -c:
|
||||
|
||||
bash -c 'shopt -s expand_aliases; alias llll="ls -l"; alias bbb=ls;
|
||||
bbb; llll'
|
||||
|
||||
|
||||
Luk filen ved EOF - lad være med bare at læse videre.
|
||||
|
||||
> /tmp/ged; tail -f /tmp/ged| xargs -n1 -E eof & sleep 1; echo echo a >>/tmp/ged; echo eof >>/tmp/ged; seq 4 >>/tmp/ged; wait
|
||||
|
||||
> /tmp/ged; tail -f /tmp/ged| parallel -n1 -E eof & sleep 1; echo echo a >>/tmp/ged; echo eof >>/tmp/ged; seq 4 >>/tmp/ged; wait
|
||||
|
||||
--timeout auto: If a jobs takes > 3*moving average runtime then kill it. Only after job 3.
|
||||
|
||||
niceload seeks last column:
|
||||
|
||||
iostat -x 1 2
|
||||
|
@ -59,8 +51,8 @@ locate .gz | parallel -X find {} -size +1000 -size -2000 | parallel --workdir ..
|
|||
|
||||
== Compare ==
|
||||
|
||||
http://code.google.com/p/spawntool/
|
||||
http://code.google.com/p/push/
|
||||
Unchanged since 2008 http://code.google.com/p/spawntool/
|
||||
Unchanged since 2011 http://code.google.com/p/push/
|
||||
|
||||
== Bug? ==
|
||||
|
||||
|
@ -106,8 +98,6 @@ for potentiel:
|
|||
|
||||
colsep = [sepchars]{no_of_sepchars}
|
||||
|
||||
|
||||
# TODO max_line_length on remote
|
||||
# TODO compute how many can be transferred within max_line_length
|
||||
|
||||
Til inspiration.
|
||||
|
|
|
@ -204,6 +204,17 @@ Very few changes so this can be considered a stable release.
|
|||
|
||||
New in this release:
|
||||
|
||||
* GNU Parallel was used (unfortunately with improper citation) in:
|
||||
Understanding the Impact of E-Commerce Software on the Adoption of Structured Data on the Web
|
||||
http://link.springer.com/chapter/10.1007/978-3-642-38366-3_9#page-1
|
||||
|
||||
* GNU Parallel was used (unfortunately with improper citation) in:
|
||||
CWI at TREC 2012, KBA track and Session Track
|
||||
http://trec.nist.gov/pubs/trec21/papers/CWI.kba.session.final.pdf
|
||||
|
||||
* Mitigation of Adverse Effects Caused by Shock Wave Boundary Layer Interactions through Optimal Wall Shaping
|
||||
http://arc.aiaa.org/doi/abs/10.2514/6.2013-2653
|
||||
|
||||
* http://www.brunokim.com.br/blog/?p=18
|
||||
|
||||
* http://www.open-open.com/news/view/371301
|
||||
|
|
67
src/parallel
67
src/parallel
|
@ -643,6 +643,7 @@ sub get_options_from_array {
|
|||
# false if parsing failed
|
||||
# @array is changed
|
||||
my $array_ref = shift;
|
||||
my @keep_only = @_;
|
||||
# A bit of shuffling of @ARGV needed as GetOptionsFromArray is not
|
||||
# supported everywhere
|
||||
my @save_argv;
|
||||
|
@ -651,7 +652,17 @@ sub get_options_from_array {
|
|||
@save_argv = @::ARGV;
|
||||
@::ARGV = @{$array_ref};
|
||||
}
|
||||
my @retval = GetOptions(options_hash());
|
||||
# If @keep_only set: Ignore all values except @keep_only
|
||||
my %options = options_hash();
|
||||
if(@keep_only) {
|
||||
my (%keep,@dummy);
|
||||
@keep{@keep_only} = @keep_only;
|
||||
for my $k (grep { not $keep{$_} } keys %options) {
|
||||
# Store the value of the option in @dummy
|
||||
$options{$k} = \@dummy;
|
||||
}
|
||||
}
|
||||
my @retval = GetOptions(%options);
|
||||
if(not $this_is_ARGV) {
|
||||
@{$array_ref} = @::ARGV;
|
||||
@::ARGV = @save_argv;
|
||||
|
@ -1035,7 +1046,7 @@ sub read_options {
|
|||
Getopt::Long::Configure("bundling","require_order");
|
||||
my @ARGV_copy = @ARGV;
|
||||
# Check if there is a --profile to set @opt::profile
|
||||
get_options_from_array(\@ARGV_copy) || die_usage();
|
||||
get_options_from_array(\@ARGV_copy,"profile|J=s","plain") || die_usage();
|
||||
my @ARGV_profile = ();
|
||||
my @ARGV_env = ();
|
||||
if(not $opt::plain) {
|
||||
|
@ -2192,32 +2203,44 @@ sub now {
|
|||
|
||||
sub multiply_binary_prefix {
|
||||
# Evalualte numbers with binary prefix
|
||||
# k=10^3, m=10^6, g=10^9, t=10^12, p=10^15, e=10^18, z=10^21, y=10^24
|
||||
# K=2^10, M=2^20, G=2^30, T=2^40, P=2^50, E=2^70, Z=2^80, Y=2^80
|
||||
# Ki=2^10, Mi=2^20, Gi=2^30, Ti=2^40, Pi=2^50, Ei=2^70, Zi=2^80, Yi=2^80
|
||||
# ki=2^10, mi=2^20, gi=2^30, ti=2^40, pi=2^50, ei=2^70, zi=2^80, yi=2^80
|
||||
# K =2^10, M =2^20, G =2^30, T =2^40, P =2^50, E =2^70, Z =2^80, Y =2^80
|
||||
# k =10^3, m =10^6, g =10^9, t=10^12, p=10^15, e=10^18, z=10^21, y=10^24
|
||||
# 13G = 13*1024*1024*1024 = 13958643712
|
||||
my $s = shift;
|
||||
$s =~ s/k/*1000/g;
|
||||
$s =~ s/M/*1000*1000/g;
|
||||
$s =~ s/G/*1000*1000*1000/g;
|
||||
$s =~ s/T/*1000*1000*1000*1000/g;
|
||||
$s =~ s/P/*1000*1000*1000*1000*1000/g;
|
||||
$s =~ s/E/*1000*1000*1000*1000*1000*1000/g;
|
||||
$s =~ s/Z/*1000*1000*1000*1000*1000*1000*1000/g;
|
||||
$s =~ s/Y/*1000*1000*1000*1000*1000*1000*1000*1000/g;
|
||||
$s =~ s/X/*1000*1000*1000*1000*1000*1000*1000*1000*1000/g;
|
||||
$s =~ s/ki/*1024/gi;
|
||||
$s =~ s/mi/*1024*1024/gi;
|
||||
$s =~ s/gi/*1024*1024*1024/gi;
|
||||
$s =~ s/ti/*1024*1024*1024*1024/gi;
|
||||
$s =~ s/pi/*1024*1024*1024*1024*1024/gi;
|
||||
$s =~ s/ei/*1024*1024*1024*1024*1024*1024/gi;
|
||||
$s =~ s/zi/*1024*1024*1024*1024*1024*1024*1024/gi;
|
||||
$s =~ s/yi/*1024*1024*1024*1024*1024*1024*1024*1024/gi;
|
||||
$s =~ s/xi/*1024*1024*1024*1024*1024*1024*1024*1024*1024/gi;
|
||||
|
||||
$s =~ s/K/*1024/g;
|
||||
$s =~ s/M/*1024*1024/g;
|
||||
$s =~ s/G/*1024*1024*1024/g;
|
||||
$s =~ s/T/*1024*1024*1024*1024/g;
|
||||
$s =~ s/P/*1024*1024*1024*1024*1024/g;
|
||||
$s =~ s/E/*1024*1024*1024*1024*1024*1024/g;
|
||||
$s =~ s/Z/*1024*1024*1024*1024*1024*1024*1024/g;
|
||||
$s =~ s/Y/*1024*1024*1024*1024*1024*1024*1024*1024/g;
|
||||
$s =~ s/X/*1024*1024*1024*1024*1024*1024*1024*1024*1024/g;
|
||||
|
||||
$s =~ s/k/*1000/g;
|
||||
$s =~ s/m/*1000*1000/g;
|
||||
$s =~ s/g/*1000*1000*1000/g;
|
||||
$s =~ s/t/*1000*1000*1000*1000/g;
|
||||
$s =~ s/p/*1000*1000*1000*1000*1000/g;
|
||||
$s =~ s/e/*1000*1000*1000*1000*1000*1000/g;
|
||||
$s =~ s/z/*1000*1000*1000*1000*1000*1000*1000/g;
|
||||
$s =~ s/y/*1000*1000*1000*1000*1000*1000*1000*1000/g;
|
||||
$s =~ s/x/*1000*1000*1000*1000*1000*1000*1000*1000*1000/g;
|
||||
|
||||
$s =~ s/Ki?/*1024/gi;
|
||||
$s =~ s/Mi?/*1024*1024/gi;
|
||||
$s =~ s/Gi?/*1024*1024*1024/gi;
|
||||
$s =~ s/Ti?/*1024*1024*1024*1024/gi;
|
||||
$s =~ s/Pi?/*1024*1024*1024*1024*1024/gi;
|
||||
$s =~ s/Ei?/*1024*1024*1024*1024*1024*1024/gi;
|
||||
$s =~ s/Zi?/*1024*1024*1024*1024*1024*1024*1024/gi;
|
||||
$s =~ s/Yi?/*1024*1024*1024*1024*1024*1024*1024*1024/gi;
|
||||
$s =~ s/Xi?/*1024*1024*1024*1024*1024*1024*1024*1024*1024/gi;
|
||||
$s = eval $s;
|
||||
::debug($s);
|
||||
return $s;
|
||||
}
|
||||
|
||||
|
|
|
@ -2616,7 +2616,8 @@ B<perl -ne '/^\S+\s+\S+$/ and print $ARGV,"\n"' file>
|
|||
|
||||
It needs to be quoted like this:
|
||||
|
||||
B<ls | parallel perl -ne '/^\\S+\\s+\\S+\$/\ and\ print\ \$ARGV,\"\\n\"'>
|
||||
B<ls | parallel perl -ne '/^\\S+\\s+\\S+\$/\ and\ print\ \$ARGV,\"\\n\"'>
|
||||
B<ls | parallel perl -ne \''/^\S+\s+\S+$/ and print $ARGV,"\n"'\'>
|
||||
|
||||
Notice how spaces, \'s, "'s, and $'s need to be quoted. GNU B<parallel>
|
||||
can do the quoting by using option -q:
|
||||
|
@ -2651,8 +2652,8 @@ Or for substituting output:
|
|||
B<ls | parallel -q bash -c 'tar c {} | tee >>B<(gzip >>B<{}.tar.gz) | bzip2 >>B<{}.tar.bz2'>
|
||||
|
||||
B<Conclusion>: To avoid dealing with the quoting problems it may be
|
||||
easier just to write a small script and have GNU B<parallel> call that
|
||||
script.
|
||||
easier just to write a small script or a function (remember to
|
||||
B<export -f> the function) and have GNU B<parallel> call that.
|
||||
|
||||
|
||||
=head1 LIST RUNNING JOBS
|
||||
|
|
|
@ -2820,7 +2820,8 @@ This is particularly useful if you have lots of quoting. If you want to run a pe
|
|||
|
||||
It needs to be quoted like this:
|
||||
|
||||
@strong{ls | parallel perl -ne '/^\\S+\\s+\\S+\$/\ and\ print\ \$ARGV,\"\\n\"'}
|
||||
@strong{ls | parallel perl -ne '/^\\S+\\s+\\S+\$/\ and\ print\ \$ARGV,\"\\n\"'}
|
||||
@strong{ls | parallel perl -ne \''/^\S+\s+\S+$/ and print $ARGV,"\n"'\'}
|
||||
|
||||
Notice how spaces, \'s, "'s, and $'s need to be quoted. GNU @strong{parallel}
|
||||
can do the quoting by using option -q:
|
||||
|
@ -2857,8 +2858,8 @@ Or for substituting output:
|
|||
@strong{ls | parallel -q bash -c 'tar c @{@} | tee }>@strong{(gzip }>@strong{@{@}.tar.gz) | bzip2 }>@strong{@{@}.tar.bz2'}
|
||||
|
||||
@strong{Conclusion}: To avoid dealing with the quoting problems it may be
|
||||
easier just to write a small script and have GNU @strong{parallel} call that
|
||||
script.
|
||||
easier just to write a small script or a function (remember to
|
||||
@strong{export -f} the function) and have GNU @strong{parallel} call that.
|
||||
|
||||
@chapter LIST RUNNING JOBS
|
||||
@anchor{LIST RUNNING JOBS}
|
||||
|
|
|
@ -144,4 +144,24 @@ echo '### Test {#}'
|
|||
|
||||
echo '### Test --seqreplace and line too long'
|
||||
seq 1 100 | stdout parallel -k --seqreplace I echo $(perl -e 'print "I"x130000') \|wc
|
||||
|
||||
echo '### bug #37042: -J foo is taken from the whole command line - not just the part before the command'
|
||||
echo '--tagstring foo' > ~/.parallel/bug_37042_profile;
|
||||
parallel -J bug_37042_profile echo ::: tag_with_foo;
|
||||
parallel --tagstring a -J bug_37042_profile echo ::: tag_with_a;
|
||||
parallel --tagstring a echo -J bug_37042_profile ::: print_-J_bug_37042_profile;
|
||||
|
||||
echo '### Bug introduce by fixing bug #37042'
|
||||
parallel --xapply -a <(printf 'abc') --colsep '\t' echo {1}
|
||||
|
||||
echo "### Test --header with -N"
|
||||
(echo h1; echo h2; echo 1a;echo 1b; echo 2a;echo 2b; echo 3a)| parallel -j1 --pipe -N2 -k --header '\n.*\n' echo Start\;cat \; echo Stop
|
||||
|
||||
echo "### Test --header with --block 1k"
|
||||
(echo h1; echo h2; perl -e '$a="x"x110;for(1..22){print $_,$a,"\n"'})| parallel -j1 --pipe -k --block 1k --header '\n.*\n' echo Start\;cat \; echo Stop
|
||||
|
||||
echo "### Test --header with multiple :::"
|
||||
parallel --header : echo {a} {b} {1} {2} ::: b b1 ::: a a2
|
||||
|
||||
|
||||
EOF
|
||||
|
|
|
@ -18,12 +18,12 @@ echo '### Test --timeout';
|
|||
nice parallel -j0 -k --timeout 1 echo {}\; sleep {}\; echo {} ::: 1.1 7.7 8.8 9.9
|
||||
|
||||
echo '### Test retired';
|
||||
stdout parallel -B;
|
||||
stdout parallel -B foo;
|
||||
stdout parallel -g;
|
||||
stdout parallel -H;
|
||||
stdout parallel -H 1;
|
||||
stdout parallel -T;
|
||||
stdout parallel -U;
|
||||
stdout parallel -W;
|
||||
stdout parallel -U foo;
|
||||
stdout parallel -W foo;
|
||||
stdout parallel -Y;
|
||||
|
||||
echo '### Test --joblog followed by --resume --joblog'
|
||||
|
|
|
@ -142,7 +142,7 @@ echo '### Negative replacement strings'
|
|||
parallel --colsep ' ' echo '{-3}orrect' ::: "1 c 3 4"
|
||||
|
||||
echo 'bug #38439: "open files" with --files --pipe blocks after a while'
|
||||
ulimit -n 20; yes |head -n 10M | parallel --pipe -k echo {#} of 21
|
||||
ulimit -n 20; yes |head -n 10M | parallel --pipe -k echo {#} of 20
|
||||
|
||||
echo 'bug #34241: --pipe should not spawn unneeded processes - part 2'
|
||||
seq 500 | parallel --tmpdir . -j10 --pipe --block 1k --files wc >/dev/null;
|
||||
|
|
|
@ -17,7 +17,7 @@ echo '### Test 200M records with too small block';
|
|||
echo start;
|
||||
seq 1 44 | parallel -uj1 cat /tmp/blocktest\;true;
|
||||
echo end;
|
||||
) | stdout parallel -k --block 200M -j2 --pipe --recend 'end\n' wc -c |
|
||||
) | stdout parallel -k --block 200m -j2 --pipe --recend 'end\n' wc -c |
|
||||
egrep -v '^0$'
|
||||
|
||||
echo '### Test -N with multiple jobslots and multiple args'
|
||||
|
@ -90,7 +90,7 @@ echo '### Test -N even+2';
|
|||
seq 1 12 | parallel -j2 -k -N 2 --pipe cat";echo ole;sleep 1.\$PARALLEL_SEQ"
|
||||
|
||||
echo '### Test --recstart + --recend';
|
||||
cat /tmp/blocktest | parallel --block 1m -k --recstart 44 --recend "44" -j10 --pipe sort -n |md5sum
|
||||
cat /tmp/blocktest | parallel --block 1M -k --recstart 44 --recend "44" -j10 --pipe sort -n |md5sum
|
||||
|
||||
echo '### Race condition bug - 1 - would block';
|
||||
seq 1 80 | nice parallel -j0 'seq 1 10| parallel --block 1 --recend "" --pipe cat;true' >/dev/null
|
||||
|
|
|
@ -10,6 +10,10 @@ VBoxManage startvm CentOS3-root:centos3 >/dev/null 2>&1
|
|||
VBoxManage startvm CentOS5-root:centos5 >/dev/null 2>&1
|
||||
VBoxManage startvm RedHat9-root:redhat9 >/dev/null 2>&1
|
||||
VBoxManage startvm FreeBSD71 >/dev/null 2>&1
|
||||
ping -c 1 centos3.tange.dk >/dev/null 2>&1
|
||||
ping -c 1 centos5.tange.dk >/dev/null 2>&1
|
||||
ping -c 1 redhat9.tange.dk >/dev/null 2>&1
|
||||
ping -c 1 freebsd7.tange.dk >/dev/null 2>&1
|
||||
|
||||
echo "### bug #37589: Red Hat 9 (Shrike) perl v5.8.0 built for i386-linux-thread-multi error"
|
||||
cp `which parallel` /tmp/parallel
|
||||
|
|
|
@ -2,24 +2,17 @@
|
|||
|
||||
# -L1 will join lines ending in ' '
|
||||
cat <<'EOF' | sed -e s/\$SERVER1/$SERVER1/\;s/\$SERVER2/$SERVER2/ | parallel -j10 -k -L1
|
||||
echo "### Test memory consumption stays (almost) the same for 30 and 300 jobs"
|
||||
out30=$( stdout memusg parallel -j2 true :::: <(perl -e '$a="x"x100000;for(1..30){print $a,"\n"}') );
|
||||
out300=$( stdout memusg parallel -j2 true :::: <(perl -e '$a="x"x100000;for(1..300){print $a,"\n"}') );
|
||||
mem30=$(echo $out30 | tr -cd 0-9);
|
||||
mem300=$(echo $out300 | tr -cd 0-9);
|
||||
echo "Test if memory consumption(300 jobs) < memory consumption(30 jobs) * 150% ";
|
||||
echo $(($mem300*100 < $mem30 * 150))
|
||||
|
||||
EOF
|
||||
|
||||
echo "### Test memory consumption stays (almost) the same for 30 and 300 jobs";
|
||||
out30=$( stdout memusg parallel -j2 true :::: <(perl -e '$a="x"x100000;for(1..30){print $a,"\n"}') );
|
||||
out300=$( stdout memusg parallel -j2 true :::: <(perl -e '$a="x"x100000;for(1..300){print $a,"\n"}') );
|
||||
mem30=$(echo $out30 | tr -cd 0-9);
|
||||
mem300=$(echo $out300 | tr -cd 0-9);
|
||||
echo "Test if memory consumption(300 jobs) < memory consumption(30 jobs) * 150% ";
|
||||
echo $(($mem300*100 < $mem30 * 150))
|
||||
|
||||
echo "### Test --header with -N";
|
||||
(echo h1; echo h2; echo 1a;echo 1b; echo 2a;echo 2b; echo 3a)| parallel -j1 --pipe -N2 -k --header '\n.*\n' echo Start\;cat \; echo Stop
|
||||
|
||||
echo "### Test --header with --block 1k";
|
||||
(echo h1; echo h2; perl -e '$a="x"x110;for(1..22){print $_,$a,"\n"'})| parallel -j1 --pipe -k --block 1k --header '\n.*\n' echo Start\;cat \; echo Stop
|
||||
|
||||
echo "### Test --header with multiple :::"
|
||||
parallel --header : echo {a} {b} {1} {2} ::: b b1 ::: a a2
|
||||
|
||||
echo '### Test --shellquote'
|
||||
cat <<'_EOF' | parallel --shellquote
|
||||
|
|
|
@ -266,3 +266,60 @@ o
|
|||
1 1 130001
|
||||
1 1 130001
|
||||
parallel: Command line too long (260009 >= 131071) at number 9: 10...
|
||||
### bug #37042: -J foo is taken from the whole command line - not just the part before the command
|
||||
foo tag_with_foo
|
||||
a tag_with_a
|
||||
a -J bug_37042_profile print_-J_bug_37042_profile
|
||||
### Bug introduce by fixing bug #37042
|
||||
abc
|
||||
### Test --header with -N
|
||||
Start
|
||||
h1
|
||||
h2
|
||||
1a
|
||||
1b
|
||||
Stop
|
||||
Start
|
||||
h1
|
||||
h2
|
||||
2a
|
||||
2b
|
||||
Stop
|
||||
Start
|
||||
h1
|
||||
h2
|
||||
3a
|
||||
Stop
|
||||
### Test --header with --block 1k
|
||||
Start
|
||||
h1
|
||||
h2
|
||||
1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
2xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
3xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
4xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
5xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
6xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
7xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
8xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
9xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
10xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
11xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
12xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
13xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
14xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
15xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
16xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
17xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
Stop
|
||||
Start
|
||||
h1
|
||||
h2
|
||||
18xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
19xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
20xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
21xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
22xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
Stop
|
||||
### Test --header with multiple :::
|
||||
a2 b1 b1 a2
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
### Test if we can deal with output > 4 GB
|
||||
46a318993dfc8e2afd71ff2bc6f605f1 -
|
||||
### Test Force outside the file handle limit, 2009-02-17 Gave fork error
|
||||
parallel: Warning: Only enough filehandles to run 507 jobs in parallel. Raising ulimit -n may help.
|
||||
parallel: Warning: Only enough filehandles to run 506 jobs in parallel. Raising ulimit -n may help.
|
||||
Start
|
||||
end
|
||||
### Test of --retries on unreachable host
|
||||
|
|
|
@ -45,6 +45,34 @@ parallel: Error: -U has been retired. Use --er.
|
|||
parallel: Error: -W has been retired. Use --wd.
|
||||
parallel: Error: -Y has been retired. Use --shebang.
|
||||
parallel: Error: -H has been retired. Use --halt.
|
||||
parallel: Error: -g has been retired. Use --group.
|
||||
parallel: Error: -B has been retired. Use --bf.
|
||||
parallel: Error: -T has been retired. Use --tty.
|
||||
parallel: Error: -U has been retired. Use --er.
|
||||
parallel: Error: -W has been retired. Use --wd.
|
||||
parallel: Error: -Y has been retired. Use --shebang.
|
||||
parallel: Error: -H has been retired. Use --halt.
|
||||
parallel: Error: -g has been retired. Use --group.
|
||||
parallel: Error: -B has been retired. Use --bf.
|
||||
parallel: Error: -T has been retired. Use --tty.
|
||||
parallel: Error: -U has been retired. Use --er.
|
||||
parallel: Error: -W has been retired. Use --wd.
|
||||
parallel: Error: -Y has been retired. Use --shebang.
|
||||
parallel: Error: -H has been retired. Use --halt.
|
||||
parallel: Error: -g has been retired. Use --group.
|
||||
parallel: Error: -B has been retired. Use --bf.
|
||||
parallel: Error: -T has been retired. Use --tty.
|
||||
parallel: Error: -U has been retired. Use --er.
|
||||
parallel: Error: -W has been retired. Use --wd.
|
||||
parallel: Error: -Y has been retired. Use --shebang.
|
||||
parallel: Error: -H has been retired. Use --halt.
|
||||
parallel: Error: -g has been retired. Use --group.
|
||||
parallel: Error: -B has been retired. Use --bf.
|
||||
parallel: Error: -T has been retired. Use --tty.
|
||||
parallel: Error: -U has been retired. Use --er.
|
||||
parallel: Error: -W has been retired. Use --wd.
|
||||
parallel: Error: -Y has been retired. Use --shebang.
|
||||
parallel: Error: -H has been retired. Use --halt.
|
||||
### Test --joblog followed by --resume --joblog
|
||||
5 49
|
||||
### Test --resume --joblog followed by --resume --joblog
|
||||
|
|
|
@ -239,27 +239,26 @@ correct
|
|||
2 + 4 = 2 + 4= 6
|
||||
correct
|
||||
bug #38439: "open files" with --files --pipe blocks after a while
|
||||
1 of 21
|
||||
2 of 21
|
||||
3 of 21
|
||||
4 of 21
|
||||
5 of 21
|
||||
6 of 21
|
||||
7 of 21
|
||||
8 of 21
|
||||
9 of 21
|
||||
10 of 21
|
||||
11 of 21
|
||||
12 of 21
|
||||
13 of 21
|
||||
14 of 21
|
||||
15 of 21
|
||||
16 of 21
|
||||
17 of 21
|
||||
18 of 21
|
||||
19 of 21
|
||||
20 of 21
|
||||
21 of 21
|
||||
1 of 20
|
||||
2 of 20
|
||||
3 of 20
|
||||
4 of 20
|
||||
5 of 20
|
||||
6 of 20
|
||||
7 of 20
|
||||
8 of 20
|
||||
9 of 20
|
||||
10 of 20
|
||||
11 of 20
|
||||
12 of 20
|
||||
13 of 20
|
||||
14 of 20
|
||||
15 of 20
|
||||
16 of 20
|
||||
17 of 20
|
||||
18 of 20
|
||||
19 of 20
|
||||
20 of 20
|
||||
bug #34241: --pipe should not spawn unneeded processes - part 2
|
||||
2
|
||||
No .par should exist
|
||||
|
|
|
@ -1 +1,3 @@
|
|||
### Test --env all chars except \n,\92,\160 - single and double - no output is good
|
||||
### bug #37262: --slf + --filter-hosts fails
|
||||
OK
|
||||
|
|
|
@ -207,7 +207,7 @@ hurd.polarhome.com Welcome to hurd ...member of polarhome.com realm.
|
|||
hurd.polarhome.com Works on hurd.polarhome.com
|
||||
irix.polarhome.com
|
||||
irix.polarhome.com IRIX64 6.5 07202013 IP35
|
||||
irix.polarhome.com Unknown open() mode '>&' at bin/parallel line 1274, <$fh> line 1.
|
||||
irix.polarhome.com Unknown open() mode '>&' at bin/parallel line 1310.
|
||||
irix.polarhome.com Welcome to irix ...member of polarhome.com realm
|
||||
mandriva.polarhome.com
|
||||
mandriva.polarhome.com
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
### Test -k
|
||||
parallel: Warning: Only enough filehandles to run 20 jobs in parallel. Raising ulimit -n may help.
|
||||
parallel: Warning: Only enough filehandles to run 19 jobs in parallel. Raising ulimit -n may help.
|
||||
begin
|
||||
1
|
||||
2
|
||||
|
|
|
@ -1,56 +1,5 @@
|
|||
### Test memory consumption stays (almost) the same for 30 and 300 jobs
|
||||
Test if memory consumption(300 jobs) < memory consumption(30 jobs) * 150%
|
||||
1
|
||||
### Test --header with -N
|
||||
Start
|
||||
h1
|
||||
h2
|
||||
1a
|
||||
1b
|
||||
Stop
|
||||
Start
|
||||
h1
|
||||
h2
|
||||
2a
|
||||
2b
|
||||
Stop
|
||||
Start
|
||||
h1
|
||||
h2
|
||||
3a
|
||||
Stop
|
||||
### Test --header with --block 1k
|
||||
Start
|
||||
h1
|
||||
h2
|
||||
1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
2xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
3xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
4xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
5xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
6xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
7xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
8xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
9xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
10xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
11xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
12xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
13xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
14xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
15xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
16xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
17xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
Stop
|
||||
Start
|
||||
h1
|
||||
h2
|
||||
18xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
19xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
20xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
21xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
22xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
Stop
|
||||
### Test --header with multiple :::
|
||||
a2 b1 b1 a2
|
||||
### Test --shellquote
|
||||
awk\ -v\ FS=\"\\\",\\\"\"\ \'\{print\ \$1,\ \$3,\ \$4,\ \$5,\ \$9,\ \$14\}\'\ \|\ grep\ -v\ \"\#\"\ \|\ sed\ -e\ \'1d\'\ -e\ \'s/\\\"//g\'\ -e\ \'s/\\/\\/\\//\\t/g\'\ \|\ cut\ -f1-6,11\ \|\ sed\ -e\ \'s/\\/\\//\\t/g\'\ -e\ \'s/\ /\\t/g
|
||||
|
|
Loading…
Reference in a new issue