mirror of
https://git.savannah.gnu.org/git/parallel.git
synced 2024-12-22 20:57:53 +00:00
parallel: Obsoleted --tollef. To be retired 20140222.
This commit is contained in:
parent
21c62a2545
commit
07c5b5c704
|
@ -171,31 +171,39 @@ cc:Sandro Cazzaniga <kharec@mandriva.org>,
|
|||
Ryoichiro Suzuki <ryoichiro.suzuki@gmail.com>,
|
||||
Jesse Alama <jesse.alama@gmail.com>
|
||||
|
||||
Subject: GNU Parallel 20130122 ('Jyoti Singh Pandey') released
|
||||
Subject: GNU Parallel 20130222 ('Chelyabinsk') released
|
||||
|
||||
GNU Parallel 20130122 ('Jyoti Singh Pandey') has been released. It is
|
||||
GNU Parallel 20130222 ('Chelyabinsk') has been released. It is
|
||||
available for download at: http://ftp.gnu.org/gnu/parallel/
|
||||
|
||||
New in this release:
|
||||
|
||||
* --sshdelay Delay starting next ssh by secs seconds. GNU parallel
|
||||
will pause secs seconds after starting each ssh. secs can be less
|
||||
than 1 seconds.
|
||||
* --resume works with --pipe.
|
||||
|
||||
* Official OpenBSD port:
|
||||
http://ftp.openbsd.org/ports/sysutils/parallel/
|
||||
* --resume-failed will go through --joblog, redo the failed jobs and
|
||||
then continue like --resume.
|
||||
|
||||
* Official DragonFlyBSD package:
|
||||
http://www.mirrorservice.org/sites/ftp.dragonflybsd.org/packages/amd64/DragonFly-3.0.0/stable/parallel/
|
||||
* Negative positional arguments count from the end: {-1} means the
|
||||
last argument, {-2} the second to last.
|
||||
|
||||
* Post about niceload in Hungarian:
|
||||
http://commandline.blog.hu/2013/01/02/niceload
|
||||
* NetBSD CPU detection.
|
||||
|
||||
* 自炊スキャンデータをKobo Gloに最適化
|
||||
http://interstadial.wordpress.com/2013/01/20/
|
||||
* --blocksize increases exponentially if it smaller than a full
|
||||
record.
|
||||
|
||||
* GNU parallel+ssh で複数のリモートホストに複数のコマンドを実行させる
|
||||
http://oshiire.to/archives/1686
|
||||
* Processing n-line records (--pipe -L n) is now much faster.
|
||||
|
||||
* GNU Parallel is the highest rated tool on:
|
||||
http://www.biostars.org/show/tools/?sort=votes&since=all%20time
|
||||
|
||||
* GNU Parallel was loved during FSFE's #ilovefs campaign.
|
||||
http://fsfe.org/news/2013/news-20130212-01.en.html
|
||||
|
||||
* Using GNU Parallel with s3cmd (Japanese).
|
||||
http://blog.suz-lab.com/2013/02/s3cmd-gnu-paralells3.html
|
||||
|
||||
* Intro to GNU Parallel (Chinese).
|
||||
http://guiquanz.github.com/2013/02/12/gnu-parallel-intro/
|
||||
|
||||
* Bug fixes and man page updates.
|
||||
|
||||
|
|
35
src/parallel
35
src/parallel
|
@ -1,6 +1,6 @@
|
|||
#!/usr/bin/perl -w
|
||||
|
||||
# Copyright (C) 2007,2008,2009,2010,2011,2012 Ole Tange and Free Software
|
||||
# Copyright (C) 2007,2008,2009,2010,2011,2012,2013 Ole Tange and Free Software
|
||||
# Foundation, Inc.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
|
@ -637,7 +637,7 @@ sub get_options_from_array {
|
|||
sub parse_options {
|
||||
# Returns: N/A
|
||||
# Defaults:
|
||||
$Global::version = 20130212;
|
||||
$Global::version = 20130217;
|
||||
$Global::progname = 'parallel';
|
||||
$Global::infinity = 2**31;
|
||||
$Global::debug = 0;
|
||||
|
@ -749,6 +749,8 @@ sub parse_options {
|
|||
}
|
||||
if($opt::tollef and not $opt::gnu and not $opt::plain) {
|
||||
# Behave like tollef parallel (from moreutils)
|
||||
::warning("YOU ARE USING --tollef. --tollef is obsolete and will be retired 20140222.\n");
|
||||
::warning("See: http://lists.gnu.org/archive/html/parallel/2013-02/msg00018.html\n");
|
||||
$opt::u = 1;
|
||||
$Global::grouped = 0;
|
||||
$Global::quoting = 1;
|
||||
|
@ -1294,19 +1296,19 @@ sub start_more_jobs {
|
|||
|
||||
for my $sshlogin (values %Global::host) {
|
||||
debug("Running jobs before on ".$sshlogin->string().": ".$sshlogin->jobs_running()."\n");
|
||||
if($opt::load and $sshlogin->loadavg_too_high()) {
|
||||
# The load is too high or unknown
|
||||
next;
|
||||
}
|
||||
if($opt::noswap and $sshlogin->swapping()) {
|
||||
# The server is swapping
|
||||
next;
|
||||
}
|
||||
if($sshlogin->too_fast_remote_login()) {
|
||||
next;
|
||||
}
|
||||
while ($sshlogin->jobs_running() < $sshlogin->max_jobs_running()) {
|
||||
if($Global::JobQueue->empty() and not $opt::pipe) {
|
||||
while ($sshlogin->jobs_running() < $sshlogin->max_jobs_running()) {
|
||||
if($opt::load and $sshlogin->loadavg_too_high()) {
|
||||
# The load is too high or unknown
|
||||
next;
|
||||
}
|
||||
if($opt::noswap and $sshlogin->swapping()) {
|
||||
# The server is swapping
|
||||
next;
|
||||
}
|
||||
if($sshlogin->too_fast_remote_login()) {
|
||||
next;
|
||||
}
|
||||
if($Global::JobQueue->empty() and not $opt::pipe) {
|
||||
last;
|
||||
}
|
||||
debug($sshlogin->string()." has ".$sshlogin->jobs_running()
|
||||
|
@ -2018,7 +2020,7 @@ sub version {
|
|||
}
|
||||
print join("\n",
|
||||
"GNU $Global::progname $Global::version",
|
||||
"Copyright (C) 2007,2008,2009,2010,2011,2012 Ole Tange and Free Software Foundation, Inc.",
|
||||
"Copyright (C) 2007,2008,2009,2010,2011,2012,2013 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 $Global::progname comes with no warranty.",
|
||||
|
@ -2513,6 +2515,7 @@ sub loadavg {
|
|||
return $self->{'loadavg'};
|
||||
}
|
||||
|
||||
|
||||
sub max_loadavg {
|
||||
my $self = shift;
|
||||
if(not defined $self->{'max_loadavg'}) {
|
||||
|
|
|
@ -479,7 +479,7 @@ See also: B<--bg>, B<man sem>
|
|||
Implies B<--semaphore>.
|
||||
|
||||
|
||||
=item B<--filter-hosts> (beta testing)
|
||||
=item B<--filter-hosts> (alpha testing)
|
||||
|
||||
Remove down hosts. For each remote host: check that login through ssh
|
||||
works. If not: do not use this host.
|
||||
|
@ -1040,7 +1040,20 @@ there. As GNU B<parallel> only looks at the sequence numbers in
|
|||
B<--joblog> then the input, the command, and B<--joblog> all have to
|
||||
remain unchanged; otherwise GNU B<parallel> may run wrong commands.
|
||||
|
||||
See also: B<--joblog>.
|
||||
See also: B<--joblog>, B<--resume-failed>.
|
||||
|
||||
|
||||
=item B<--resume-failed> (alpha testing)
|
||||
|
||||
Retry all failed and resume from the last unfinished job. By reading
|
||||
B<--joblog> GNU B<parallel> will figure out the failed jobs and run
|
||||
those again. After that it will resume last unfinished job and
|
||||
continue from there. As GNU B<parallel> only looks at the sequence
|
||||
numbers in B<--joblog> then the input, the command, and B<--joblog>
|
||||
all have to remain unchanged; otherwise GNU B<parallel> may run wrong
|
||||
commands.
|
||||
|
||||
See also: B<--joblog>, B<--resume>.
|
||||
|
||||
|
||||
=item B<--retries> I<n>
|
||||
|
@ -1178,7 +1191,7 @@ Like this:
|
|||
B<--shebang> must be set as the first option.
|
||||
|
||||
|
||||
=item B<--shebang-wrap> (alpha testing)
|
||||
=item B<--shebang-wrap> (beta testing)
|
||||
|
||||
GNU B<parallel> can parallelize scripts by wrapping the shebang
|
||||
line. If the program can be run like this:
|
||||
|
@ -1497,9 +1510,9 @@ Use B<-v> B<-v> to print the wrapping ssh command when running remotely.
|
|||
Print the version GNU B<parallel> and exit.
|
||||
|
||||
|
||||
=item B<--workdir> I<mydir> (beta testing)
|
||||
=item B<--workdir> I<mydir>
|
||||
|
||||
=item B<--wd> I<mydir> (beta testing)
|
||||
=item B<--wd> I<mydir>
|
||||
|
||||
Files transferred using B<--transfer> and B<--return> will be relative
|
||||
to I<mydir> on remote computers, and the command will be executed in
|
||||
|
@ -3432,10 +3445,11 @@ fixed in that version.
|
|||
|
||||
=item *
|
||||
|
||||
A complete example that others can run that shows the problem. A
|
||||
combination of B<seq>, B<cat>, B<echo>, and B<sleep> can reproduce
|
||||
most errors. If your example requires large files, see if you can make
|
||||
them by something like B<seq 1000000> > B<file>.
|
||||
A complete example that others can run that shows the problem. This
|
||||
should preferably be small and simple. A combination of B<seq>,
|
||||
B<cat>, B<echo>, and B<sleep> can reproduce most errors. If your
|
||||
example requires large files, see if you can make them by something
|
||||
like B<seq 1000000> > B<file>.
|
||||
|
||||
=item *
|
||||
|
||||
|
|
|
@ -178,13 +178,13 @@ Report bugs to <bug-parallel@gnu.org>.
|
|||
|
||||
=head1 AUTHOR
|
||||
|
||||
Copyright (C) 2010,2011,2012 Ole Tange, http://ole.tange.dk and Free
|
||||
Copyright (C) 2010,2011,2012,2013 Ole Tange, http://ole.tange.dk and Free
|
||||
Software Foundation, Inc.
|
||||
|
||||
|
||||
=head1 LICENSE
|
||||
|
||||
Copyright (C) 2010,2011,2012 Free Software Foundation, Inc.
|
||||
Copyright (C) 2010,2011,2012,2013 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
|
Loading…
Reference in a new issue