mirror of
https://git.savannah.gnu.org/git/parallel.git
synced 2024-12-23 05:07:54 +00:00
parallel: Fixed bug #53748: -k --retries 10 + out of filehandles = blocking.
This commit is contained in:
parent
9a1d2e9dad
commit
1422b7b43a
13
src/parallel
13
src/parallel
|
@ -2729,6 +2729,7 @@ sub init_run_jobs {
|
|||
$no_more_file_handles_warned++ or
|
||||
::warning("No more file handles. ",
|
||||
"Raising ulimit -n or /etc/security/limits.conf may help.");
|
||||
debug("start", "No more file handles. ");
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
@ -3973,7 +3974,9 @@ sub reaper {
|
|||
}
|
||||
my $sshlogin = $job->sshlogin();
|
||||
$sshlogin->dec_jobs_running();
|
||||
if(not $job->should_be_retried()) {
|
||||
if($job->should_be_retried()) {
|
||||
$job->free_ressources();
|
||||
} else {
|
||||
# The job is done
|
||||
$sshlogin->inc_jobs_completed();
|
||||
# Free the jobslot
|
||||
|
@ -9126,6 +9129,14 @@ sub print_tag {
|
|||
return print_normal(@_);
|
||||
}
|
||||
|
||||
sub free_ressources() {
|
||||
my $self = shift;
|
||||
for my $fdno (sort { $a <=> $b } keys %Global::fd) {
|
||||
close $self->fh($fdno,"w");
|
||||
close $self->fh($fdno,"r");
|
||||
}
|
||||
}
|
||||
|
||||
sub print_normal {
|
||||
my $self = shift;
|
||||
my ($fdno,$in_fh,$out_fd) = @_;
|
||||
|
|
|
@ -299,6 +299,13 @@ par_linebuffer_tag_slow_output() {
|
|||
parallel --delay 1 -j0 --tag --line-buffer halfline ::: a b
|
||||
}
|
||||
|
||||
par_retries_all_fail() {
|
||||
echo "bug #53748: -k --retries 10 + out of filehandles = blocking"
|
||||
ulimit -n 30
|
||||
seq 8 |
|
||||
parallel -k -j0 --retries 2 --timeout 0.1 'echo {}; sleep {}; false' 2>/dev/null
|
||||
}
|
||||
|
||||
export -f $(compgen -A function | grep par_)
|
||||
compgen -A function | grep par_ | sort |
|
||||
parallel --joblog /tmp/jl-`basename $0` -j10 --tag -k '{} 2>&1'
|
||||
|
|
|
@ -506,6 +506,15 @@ par_results_csv 8,:,999.999,999.999,0,6,0,0,"echo 23 11",23,11,"23 11
|
|||
par_results_csv ",
|
||||
par_results_csv 9,:,999.999,999.999,0,6,0,0,"echo 23 12",23,12,"23 12
|
||||
par_results_csv ",
|
||||
par_retries_all_fail bug #53748: -k --retries 10 + out of filehandles = blocking
|
||||
par_retries_all_fail 1
|
||||
par_retries_all_fail 2
|
||||
par_retries_all_fail 3
|
||||
par_retries_all_fail 4
|
||||
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_slow_total_jobs bug #51006: Slow total_jobs() eats job
|
||||
|
|
Loading…
Reference in a new issue