Fixed bug #50228: --pipe --tagstring broken.

This commit is contained in:
Ole Tange 2017-02-05 03:24:23 +01:00
parent c028fa0ad7
commit 70006774e8
3 changed files with 15 additions and 1 deletions

View file

@ -96,7 +96,10 @@ sub set_input_source_header {
for my $s (split /$delimiter/o, $line) { for my $s (split /$delimiter/o, $line) {
::debug("init", "Colname: '$s'"); ::debug("init", "Colname: '$s'");
# Replace {colname} with {2} # Replace {colname} with {2}
for(@command,@Global::ret_files,@Global::transfer_files) { for(@command,@Global::ret_files,@Global::transfer_files,
$opt::tagstring, $opt::workdir, $opt::results, $opt::retries) {
# Skip if undefined
$_ or next;
s:\{$s(|/|//|\.|/\.)\}:\{$id$1\}:g; s:\{$s(|/|//|\.|/\.)\}:\{$id$1\}:g;
# {=header1 ... =} => {=1 ... =} # {=header1 ... =} => {=1 ... =}
s:$left $s (.*?) $right:$l$id$1$r:gx; s:$left $s (.*?) $right:$l$id$1$r:gx;
@ -7930,6 +7933,8 @@ sub start {
$command = "true"; $command = "true";
} }
$job->openoutputfiles(); $job->openoutputfiles();
# Call slot to store the slot value
$job->slot();
my($stdout_fh,$stderr_fh) = ($job->fh(1,"w"),$job->fh(2,"w")); my($stdout_fh,$stderr_fh) = ($job->fh(1,"w"),$job->fh(2,"w"));
if($opt::ungroup or $opt::sqlworker) { if($opt::ungroup or $opt::sqlworker) {
print_dryrun_and_verbose($stdout_fh,$job,$command); print_dryrun_and_verbose($stdout_fh,$job,$command);

View file

@ -677,6 +677,11 @@ par_tee() {
seq 1000000 | parallel 'echo {%};LANG=C wc' ::: {1..5} ::: {a..b} seq 1000000 | parallel 'echo {%};LANG=C wc' ::: {1..5} ::: {a..b}
} }
par_tagstring_pipe() {
echo 'bug #50228: --pipe --tagstring broken'
seq 3000 | parallel -j4 --pipe -N1000 -k --tagstring {%} LANG=C wc
}
export -f $(compgen -A function | grep par_) export -f $(compgen -A function | grep par_)
compgen -A function | grep par_ | sort | compgen -A function | grep par_ | sort |
parallel -j6 --tag -k --joblog +/tmp/jl-`basename $0` '{} 2>&1' parallel -j6 --tag -k --joblog +/tmp/jl-`basename $0` '{} 2>&1'

View file

@ -1630,6 +1630,10 @@ par_retries_replacement_string 22
par_retries_replacement_string 33 par_retries_replacement_string 33
par_retries_replacement_string 33 par_retries_replacement_string 33
par_retries_replacement_string 33 par_retries_replacement_string 33
par_tagstring_pipe bug #50228: --pipe --tagstring broken
par_tagstring_pipe 1 1000 1000 3893
par_tagstring_pipe 2 1000 1000 5000
par_tagstring_pipe 3 1000 1000 5000
par_tee 1 a 1 par_tee 1 a 1
par_tee 1 a 1000000 1000000 6888896 par_tee 1 a 1000000 1000000 6888896
par_tee 1 b 2 par_tee 1 b 2