parallel: Determine max command length faster on Microsoft Windows.

This commit is contained in:
Ole Tange 2022-09-22 22:29:31 +02:00
parent b11dadd0d0
commit 5ef995babb
34 changed files with 301 additions and 228 deletions

View file

@ -3,7 +3,7 @@ Upstream-Name: parallel
Upstream-Contact: Ole Tange, http://ole.tange.dk
Source: https://git.savannah.gnu.org/git/parallel.git
Files: testsuite/input-files/testdir/* testsuite/input-files/testdir2/* testsuite/wanted-results/* testsuite/testdir/* packager/obs/* src/optional/* packager/debian/debian-template/* configure config.h.in aclocal.m4 install-sh missing testsuite/input-files/random_dirs_no_newline.tar.bz2 testsuite/input-files/random_dirs_with_newline.tar.bz2
Files: testsuite/input-files/testdir.tar.bz2 testsuite/input-files/testdir/* testsuite/input-files/testdir2/* testsuite/wanted-results/* testsuite/testdir/* packager/obs/* src/optional/* packager/debian/debian-template/* configure config.h.in aclocal.m4 install-sh missing testsuite/input-files/random_dirs_no_newline.tar.bz2 testsuite/input-files/random_dirs_with_newline.tar.bz2
Copyright: 2007-2022 Ole Tange, http://ole.tange.dk and Free Software Foundation, Inc.
License: GPL-3.0-or-later

View file

@ -145,7 +145,7 @@ reuse:
testurls:
mkdir -p urls
cd urls && grep -v '(dead)' ../src/* | grep -h -Po 'https?://[^ $$<>")}]+' | perl -pe 's/(&gt|\{).*//;s/\\-/-/g;s/\\n//g;s/&amp;/&/g;s/&#.*//;'"s/'.*//" | grep -Ev 'parallel-(20)?$$|coolwebsite.biz' | sort -u | egrep -v 'example.com|##|\*\(' | parallel -j0 --timeout 33 --bar --tag --joblog joblog --retries 3 neno wget -m -l1 -Q1 '{=$$_=Q($$_)=}'
cd urls && ../src/testurls
reconf:
rm -fr autom4te.cache aclocal.m4 config.h config.h.in config.log Makefile.in missing install-sh

View file

@ -913,7 +913,7 @@ reuse:
testurls:
mkdir -p urls
cd urls && grep -v '(dead)' ../src/* | grep -h -Po 'https?://[^ $$<>")}]+' | perl -pe 's/(&gt|\{).*//;s/\\-/-/g;s/\\n//g;s/&amp;/&/g;s/&#.*//;'"s/'.*//" | grep -Ev 'parallel-(20)?$$|coolwebsite.biz' | sort -u | egrep -v 'example.com|##|\*\(' | parallel -j0 --timeout 33 --bar --tag --joblog joblog --retries 3 neno wget -m -l1 -Q1 '{=$$_=Q($$_)=}'
cd urls && ../src/testurls
reconf:
rm -fr autom4te.cache aclocal.m4 config.h config.h.in config.log Makefile.in missing install-sh

View file

@ -22,7 +22,9 @@ single solution that just works:
* https://www.slideshare.net/NadiaEghbal/consider-the-maintainer
* https://www.youtube.com/watch?v=vTsc1m78BUk
* https://web.archive.org/web/20210203105621/https://blog.licensezero.com/2019/08/24/process-of-elimination.html
* https://web.archive.org/web/20210923091339/https://blog.licensezero.com/2019/08/26/but-you-said.html
* https://www.numfocus.org/blog/why-is-numpy-only-now-getting-funded/
* https://feross.org/funding-experiment-recap/
== Is the citation notice compatible with GPLv3? ==

View file

@ -4,6 +4,18 @@
Quote of the month:
Got around to using GNU parallel for the first time from a suggestion by @jdwasmuth ... now I'm wishing I started using this years ago
-- Stefan Gavriliuc @GavriliucStefan@twitter
If used properly, #gnuparallel actually enables time travel.
-- Dr. James Wasmuth @jdwasmuth@twitter
Im a big fan of GNU parallel!
-- Scott Cain @scottjcain@twitter
gnu parallelが便利すぎてxargsの使い方忘れちゃった
-- @mathbbQ@twitter @凍結解除手続き中
Doing some absolutely bonkers "data science" on the command line. GNU parallel + JQ is very powerful, allowing me to parse and 10Gig-JSON-File in under a minute.
-- @jeeger@twitter Keter-class developer

View file

@ -255,28 +255,31 @@ from:tange@gnu.org
to:parallel@gnu.org, bug-parallel@gnu.org
stable-bcc: Jesse Alama <jessealama@fastmail.fm>
Subject: GNU Parallel 20220922 ('Elizabeth') released
Subject: GNU Parallel 20221022 ('Керчь/Nord Stream/Annectxation/DART/Mahsa Amini/Mobilising/Niemann') released
GNU Parallel 20220922 ('Elizabeth') has been released. It is available for download at: lbry://@GnuParallel:4
GNU Parallel 20221022 ('') has been released. It is available for download at: lbry://@GnuParallel:4
Quote of the month:
reduced our backend test pipelines from 4 to 1.30 hrs. gnu parallel for the win!!!
-- Swapnil Sahu @CaffeinatedWryy@twitter
<<>>
New in this release:
* --colour-failed only changes output for failing jobs.
* Password for --sshlogin can be put in $SSHPASS.
* Examples are moved from `man parallel` to `man parallel_examples`.
*
* Bug fixes and man page updates.
News about GNU Parallel:
* WOMM - Works On My Machine uses GNU Parallel https://pypi.org/project/womm/
https://www.youtube.com/watch?v=usbMLggdMgc
https://docs.csc.fi/support/tutorials/many/
https://www.linuxfordevices.com/tutorials/linux/copy-file-to-multiple-directories-with-one-command
https://blog.gdeltproject.org/behind-the-scenes-the-power-of-simple-command-line-tools-at-cloud-scale/
https://www.openguru.com/2022/09/
https://www.folkstalk.com/2022/09/xargs-parallel-with-code-examples.html
https://www3.cs.stonybrook.edu/~cse416/Section01/Slides/SeaWulfIntro_CSE416_09222022.pdf
https://www.youtube.com/watch?v=qypUdm-IE9c
GNU Parallel - For people who live life in the parallel lane.

View file

@ -145,7 +145,7 @@ parallel_examples.html: parallel_examples.pod env_parallel.html
rm -f "$(srcdir)"/pod2htm*
# Depending on parallel_examples.html to avoid stupid pod2html race condition
parallel_tutorial.html: parallel_tutorial.pod env_parallel.html
parallel_tutorial.html: parallel_tutorial.pod parallel_examples.html
pod2html --title "GNU Parallel tutorial" "$(srcdir)"/parallel_tutorial.pod > "$(srcdir)"/parallel_tutorial.htmln \
&& mv "$(srcdir)"/parallel_tutorial.htmln "$(srcdir)"/parallel_tutorial.html \
|| echo "Warning: pod2html not found. Using old parallel_tutorial.html"

View file

@ -395,7 +395,7 @@ _parset_main() {
fi
if [ "$_parset_NAME" = "--version" ] ; then
# shellcheck disable=SC2006
echo "parset 20220922 (GNU parallel `parallel --minversion 1`)"
echo "parset 20220923 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"

View file

@ -397,7 +397,7 @@ _parset_main() {
fi
if [ "$_parset_NAME" = "--version" ] ; then
# shellcheck disable=SC2006
echo "parset 20220922 (GNU parallel `parallel --minversion 1`)"
echo "parset 20220923 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"

View file

@ -395,7 +395,7 @@ _parset_main() {
fi
if [ "$_parset_NAME" = "--version" ] ; then
# shellcheck disable=SC2006
echo "parset 20220922 (GNU parallel `parallel --minversion 1`)"
echo "parset 20220923 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"

View file

@ -378,7 +378,7 @@ _parset_main() {
fi
if [ "$_parset_NAME" = "--version" ] ; then
# shellcheck disable=SC2006
echo "parset 20220922 (GNU parallel `parallel --minversion 1`)"
echo "parset 20220923 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"

View file

@ -380,7 +380,7 @@ _parset_main() {
fi
if [ "$_parset_NAME" = "--version" ] ; then
# shellcheck disable=SC2006
echo "parset 20220922 (GNU parallel `parallel --minversion 1`)"
echo "parset 20220923 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"

View file

@ -395,7 +395,7 @@ _parset_main() {
fi
if [ "$_parset_NAME" = "--version" ] ; then
# shellcheck disable=SC2006
echo "parset 20220922 (GNU parallel `parallel --minversion 1`)"
echo "parset 20220923 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"

View file

@ -370,7 +370,7 @@ _parset_main() {
fi
if [ "$_parset_NAME" = "--version" ] ; then
# shellcheck disable=SC2006
echo "parset 20220922 (GNU parallel `parallel --minversion 1`)"
echo "parset 20220923 (GNU parallel `parallel --minversion 1`)"
echo "Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software"
echo "Foundation, Inc."
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"

View file

@ -26,7 +26,7 @@
use strict;
use Getopt::Long;
$Global::progname="niceload";
$Global::version = 20220922;
$Global::version = 20220923;
Getopt::Long::Configure("bundling","require_order");
get_options_from_array(\@ARGV) || die_usage();
if($opt::version) {

View file

@ -2495,7 +2495,6 @@ sub parse_options(@) {
# This problem has been covered by others - though no solution has
# been found:
# https://www.slideshare.net/NadiaEghbal/consider-the-maintainer
# https://blog.licensezero.com/2019/08/24/process-of-elimination.html
# https://www.numfocus.org/blog/why-is-numpy-only-now-getting-funded/
#
# The FAQ tells you why the citation notice exists:
@ -2535,7 +2534,6 @@ sub parse_options(@) {
# trademark. The xt:Commerce case shows this.
#
# Description of the xt:Commerce case in OLG Duesseldorf
# http://www.inta.org/INTABulletin/Pages/GERMANYGeneralPublicLicenseDoesNotPermitUseofThird-PartyTrademarksforAdvertisingModifiedVersionsofOpen-SourceSoftware.aspx
# https://web.archive.org/web/20180715073746/http://www.inta.org/INTABulletin/Pages/GERMANYGeneralPublicLicenseDoesNotPermitUseofThird-PartyTrademarksforAdvertisingModifiedVersionsofOpen-SourceSoftware.aspx
#
# The verdict in German
@ -2556,7 +2554,7 @@ sub parse_options(@) {
# If you want GNU Parallel to be maintained in the future you
# should keep this line.
citation_notice();
# _YOU_ will be harming free software by removing the notice. You
# *YOU* will be harming free software by removing the notice. You
# accept to be added to a public hall of shame by removing the
# line. This is because _YOU_ actively make it harder to justify
# spending time developing GNU Parallel.
@ -2682,7 +2680,7 @@ sub check_invalid_option_combinations() {
sub init_globals() {
# Defaults:
$Global::version = 20220922;
$Global::version = 20220923;
$Global::progname = 'parallel';
$::name = "GNU Parallel";
$Global::infinity = 2**31;
@ -12971,7 +12969,7 @@ sub find_max($) {
# This is slow on Cygwin, so give Cygwin users a warning
if($^O eq "cygwin") {
::warning("Finding the maximal command line length. ".
"This may take up to 30 seconds.")
"This may take up to 1 minute.")
}
# Use an upper bound of 100 MB if the shell allows for infinite
# long lengths
@ -12988,9 +12986,34 @@ sub find_max($) {
return binary_find_max(int($len/16),$len,$string);
}
# Prototype forwarding
sub binary_find_max($$$);
sub binary_find_max($$$) {
# Given a lower and upper bound find the max (length or args) of a
# command line
# Returns:
# number of chars on the longest command line allowed
my ($lower, $upper, $string) = (@_);
if($lower == $upper
or $lower == $upper-1
or $lower/$upper > 0.99) {
# $lower is +- 1 or within 1%: Don't search more
return $lower;
}
# Unevenly split binary search which is faster for Microsoft Windows.
# Guessing too high is cheap. Guessing too low is expensive.
my $split = ($^O eq "cygwin" or $^O eq "msys") ? 0.93 : 0.5;
my $middle = int (($upper-$lower)*$split + $lower);
::debug("init", "Maxlen: $lower<$middle<$upper: ");
if (is_acceptable_command_line_length($middle,$string)) {
return binary_find_max($middle,$upper,$string);
} else {
return binary_find_max($lower,$middle,$string);
}
}
sub _binary_find_max($$$) {
# Given a lower and upper bound find the max (length or args) of a
# command line
# Returns:

View file

@ -813,6 +813,9 @@ B<pigz>, B<lz4>, B<lzop>, B<plzip>, B<lzip>, B<lrz>, B<gzip>, B<pxz>,
B<lzma>, B<bzip2>, B<xz>, B<clzip>, in that order, and use the first
available.
GNU B<parallel> will use up to 8 processes per job waiting to be
printed. See B<man parallel_design> for details.
See also: B<--compress-program>

View file

@ -254,6 +254,15 @@ rest of tmpfile and exits.
As most compression programs write out a header when they start, the
tmpfile in practice is removed by B<cattail> after around 40 ms.
More detailed it works like this:
bash ( command ) |
sh ( emptywrapper ( bash ( compound compress ) ) >tmpfile )
cattail ( rm tmpfile; compound decompress ) < tmpfile
This complex setup is to make sure compress program is only started if
there is input.
=head2 Wrapping

View file

@ -1747,13 +1747,14 @@ Unfortunately, CTRL-C will also normally kill GNU B<parallel>.
But by using B<--open-tty> and ignoring SIGINT you can get the wanted effect:
parallel -j0 --open-tty --lb --tag ping {='$SIG{INT}=sub {}'=} \
parallel -j0 --open-tty --lb --tag ping '{= $SIG{INT}=sub {} =}' \
::: 1.1.1.1 8.8.8.8 9.9.9.9 21.21.21.21 80.80.80.80 88.88.88.88
B<--open-tty> will make the B<ping>s receive SIGINT (from CTRL-C).
CTRL-C will not kill GNU B<parallel>, so that will only exit after
B<ping> is done.
=head2 EXAMPLE: GNU Parallel as queue system/batch manager
GNU B<parallel> can work as a simple job queue system or batch manager.

View file

@ -122,7 +122,7 @@ GetOptions(
"help" => \$opt::dummy,
) || exit(255);
$Global::progname = ($0 =~ m:(^|/)([^/]+)$:)[1];
$Global::version = 20220922;
$Global::version = 20220923;
if($opt::version) { version(); exit 0; }
@Global::sortoptions = grep { ! /^-D$/ }
shell_quote(@ARGV_before[0..($#ARGV_before-$#ARGV-1)]);

View file

@ -667,7 +667,7 @@ $Global::Initfile && unlink $Global::Initfile;
exit ($err);
sub parse_options {
$Global::version = 20220922;
$Global::version = 20220923;
$Global::progname = 'sql';
# This must be done first as this may exec myself

17
src/testurls Executable file
View file

@ -0,0 +1,17 @@
#!/bin/bash
grep -hv '(dead)' ../src/* |
# Merge lines ending in .
perl -pe 's{(http\S+\.)\s}{$1}s' |
# Grep out URLs
grep -h -Po 'https?://[^ $$<>")}]+' |
# Remove anchor
perl -pe 's/#.*//' |
perl -pe 's/(&gt|\{).*//;s/\\-/-/g;s/\\n//g;s/&amp;/&/g;s/&#.*//;s/\s*//;'"s/'.*//;" |
# Remove spacing
perl -pe 's/\s*$/\n/' |
perl -pe 's/&quot;$//g; s/&$//g; s/\\//g;' |
grep -Ev 'parallel-(20)?$$|coolwebsite.biz' |
sort -u |
egrep -v 'example.com|##|\*\(' |
parallel -j0 --timeout 10 --bar --tag --joblog joblog --retries 3 neno wget -l1 -Q1 -U "'"'"'"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"'"'"'" '{=$_=Q($_)=}'

View file

@ -41,10 +41,9 @@ start_centos3() {
# Ignore empty ^M line
grep ..
}
(
stdout vagrant up >/dev/null
vagrantssh 'sudo /sbin/ifconfig eth1 172.27.27.3'
) &
stdout vagrant up >/dev/null &
(sleep 10; stdout vagrant up >/dev/null ) &
vagrantssh 'sudo /sbin/ifconfig eth1 172.27.27.3; echo centos3: added 172.27.27.3 >&2'
)
}
start_centos3

View file

@ -1,6 +1,10 @@
# -*- mode: ruby -*-
# vi: set ft=ruby :
# SPDX-FileCopyrightText: 2022 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
#
# SPDX-License-Identifier: GPL-3.0-or-later
# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what

View file

@ -504,10 +504,10 @@ par_long_line_remote ### Deal with long command lines on remote servers
par_long_line_remote 6 6 30006
par_long_line_remote 6 50 250050
par_maxlinelen_X_I ### Test max line length -X -I
par_maxlinelen_X_I 42d5c115907de0044ef988a0639204cd -
par_maxlinelen_X_I a98747678a5d18c4470a073812437ab2 -
par_maxlinelen_X_I Chars per line (817788/13): 62906
par_maxlinelen_m_I ### Test max line length -m -I
par_maxlinelen_m_I 2f0d9d11a071f5dbe6bd876a19499ff5 -
par_maxlinelen_m_I a3c892de2524f32f78550b47336eadd0 -
par_maxlinelen_m_I Chars per line (697810/11): 63437
par_nice Check that --nice works
par_nice load_10
@ -1051,7 +1051,7 @@ par_xargs_compat a_b c
par_xargs_compat d
par_xargs_compat e
par_xargs_compat ### test too long args
par_xargs_compat parallel: Error: Command line too long (1000005 >= 64031) at input 0: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...
par_xargs_compat parallel: Error: Command line too long (1000005 >= 63664) at input 0: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...
par_xargs_compat xargs: argument line too long
par_xargs_compat parallel: Error: Command line too long (1000007 >= 10) at input 0: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...
par_xargs_compat 1 2

View file

@ -1058,10 +1058,10 @@ par_test_job_number 8
par_test_job_number 9
par_test_job_number 10
par_too_long_line_X bug #54869: Long lines break
par_too_long_line_X 1 15890 63952
par_too_long_line_X 1 12796 63980
par_too_long_line_X 1 12796 63980
par_too_long_line_X 1 518 2590
par_too_long_line_X 1 15820 63602
par_too_long_line_X 1 12726 63630
par_too_long_line_X 1 12726 63630
par_too_long_line_X 1 728 3640
par_trailing_space_line_continuation ### Test of trailing space continuation
par_trailing_space_line_continuation foo ole bar
par_trailing_space_line_continuation quux

View file

@ -347,6 +347,12 @@ par_test_build_and_install || echo "Warning: pod2html not found. Using old env_p
par_test_build_and_install /bin/bash: line 1: pod2html: command not found
par_test_build_and_install Warning: pod2html not found. Using old env_parallel.html
par_test_build_and_install rm -f "."/pod2htm*
par_test_build_and_install pod2html --title "GNU Parallel examples" "."/parallel_examples.pod > "."/parallel_examples.htmln \
par_test_build_and_install && mv "."/parallel_examples.htmln "."/parallel_examples.html \
par_test_build_and_install || echo "Warning: pod2html not found. Using old parallel_examples.html"
par_test_build_and_install /bin/bash: line 1: pod2html: command not found
par_test_build_and_install Warning: pod2html not found. Using old parallel_examples.html
par_test_build_and_install rm -f "."/pod2htm*
par_test_build_and_install pod2html --title "GNU Parallel tutorial" "."/parallel_tutorial.pod > "."/parallel_tutorial.htmln \
par_test_build_and_install && mv "."/parallel_tutorial.htmln "."/parallel_tutorial.html \
par_test_build_and_install || echo "Warning: pod2html not found. Using old parallel_tutorial.html"
@ -389,12 +395,6 @@ par_test_build_and_install || echo "Warning: pod2html not found. Using old nicel
par_test_build_and_install /bin/bash: line 1: pod2html: command not found
par_test_build_and_install Warning: pod2html not found. Using old niceload.html
par_test_build_and_install rm -f "."/pod2htm*
par_test_build_and_install pod2html --title "GNU Parallel examples" "."/parallel_examples.pod > "."/parallel_examples.htmln \
par_test_build_and_install && mv "."/parallel_examples.htmln "."/parallel_examples.html \
par_test_build_and_install || echo "Warning: pod2html not found. Using old parallel_examples.html"
par_test_build_and_install /bin/bash: line 1: pod2html: command not found
par_test_build_and_install Warning: pod2html not found. Using old parallel_examples.html
par_test_build_and_install rm -f "."/pod2htm*
par_test_build_and_install pod2html --title "GNU parcat" "."/parcat.pod > "."/parcat.htmln \
par_test_build_and_install && mv "."/parcat.htmln "."/parcat.html \
par_test_build_and_install || echo "Warning: pod2html not found. Using old parcat.html"
@ -523,6 +523,12 @@ par_test_build_and_install || echo "Warning: pod2html not found. Using old env_p
par_test_build_and_install /bin/bash: line 1: pod2html: command not found
par_test_build_and_install Warning: pod2html not found. Using old env_parallel.html
par_test_build_and_install rm -f "."/pod2htm*
par_test_build_and_install pod2html --title "GNU Parallel examples" "."/parallel_examples.pod > "."/parallel_examples.htmln \
par_test_build_and_install && mv "."/parallel_examples.htmln "."/parallel_examples.html \
par_test_build_and_install || echo "Warning: pod2html not found. Using old parallel_examples.html"
par_test_build_and_install /bin/bash: line 1: pod2html: command not found
par_test_build_and_install Warning: pod2html not found. Using old parallel_examples.html
par_test_build_and_install rm -f "."/pod2htm*
par_test_build_and_install pod2html --title "GNU Parallel tutorial" "."/parallel_tutorial.pod > "."/parallel_tutorial.htmln \
par_test_build_and_install && mv "."/parallel_tutorial.htmln "."/parallel_tutorial.html \
par_test_build_and_install || echo "Warning: pod2html not found. Using old parallel_tutorial.html"
@ -565,12 +571,6 @@ par_test_build_and_install || echo "Warning: pod2html not found. Using old nicel
par_test_build_and_install /bin/bash: line 1: pod2html: command not found
par_test_build_and_install Warning: pod2html not found. Using old niceload.html
par_test_build_and_install rm -f "."/pod2htm*
par_test_build_and_install pod2html --title "GNU Parallel examples" "."/parallel_examples.pod > "."/parallel_examples.htmln \
par_test_build_and_install && mv "."/parallel_examples.htmln "."/parallel_examples.html \
par_test_build_and_install || echo "Warning: pod2html not found. Using old parallel_examples.html"
par_test_build_and_install /bin/bash: line 1: pod2html: command not found
par_test_build_and_install Warning: pod2html not found. Using old parallel_examples.html
par_test_build_and_install rm -f "."/pod2htm*
par_test_build_and_install pod2html --title "GNU parcat" "."/parcat.pod > "."/parcat.htmln \
par_test_build_and_install && mv "."/parcat.htmln "."/parcat.html \
par_test_build_and_install || echo "Warning: pod2html not found. Using old parcat.html"

View file

@ -1569,12 +1569,12 @@ par_macron
par_macron ¯<¯<¯>¯> -k /usr/bin/bash: line 1: ¯: No such file or directory
par_macron ¯<¯<¯>¯> -k /usr/bin/bash: line 1: ¯: No such file or directory
par_max_length_len_128k ### BUG: The length for -X is not close to max (131072)
par_max_length_len_128k 64xxx
par_max_length_len_128k 64xxx
par_max_length_len_128k 64xxx
par_max_length_len_128k 64xxx
par_max_length_len_128k 64xxx
par_max_length_len_128k 64xxx
par_max_length_len_128k 63xxx
par_max_length_len_128k 63xxx
par_max_length_len_128k 63xxx
par_max_length_len_128k 63xxx
par_max_length_len_128k 63xxx
par_max_length_len_128k 63xxx
par_memfree ### test memfree - it should be killed by timeout
par_memfree Free mem: 1k
par_memfree parallel: Warning: This job was killed because it timed out:

View file

@ -6,7 +6,7 @@ par_10000_5_rpl_X 3
par_10000_5_rpl_X 2
par_10000_m_X ### Test -m with 10000 args
par_10000_m_X 3 29994 186685
par_10000_m_X 68c56110ece48d4cd34af322ea65ebaf -
par_10000_m_X 5642f8f374aa4881e96f4f49e932d109 -
par_X_I_meta ### Test -X -I with shell meta chars
par_X_I_meta 3
par_X_I_meta 3
@ -656,8 +656,8 @@ par_shebang sh A
par_shebang sh B
par_shebang sh C
par_show_limits ### Test --show-limits
par_show_limits Maximal size of command: 131xxx
par_show_limits Maximal usable size of command: 64xxx
par_show_limits Maximal size of command: 130xxx
par_show_limits Maximal usable size of command: 63xxx
par_show_limits
par_show_limits Execution will continue now, and it will try to read its input
par_show_limits and run commands; if this is not what you wanted to happen, please
@ -665,7 +665,7 @@ par_show_limits press CTRL-D or CTRL-C
par_show_limits bar
par_show_limits car
par_show_limits far
par_show_limits Maximal size of command: 131xxx
par_show_limits Maximal size of command: 130xxx
par_show_limits Maximal usable size of command: 100
par_show_limits
par_show_limits Execution will continue now, and it will try to read its input
@ -673,8 +673,8 @@ par_show_limits and run commands; if this is not what you wanted to happen, plea
par_show_limits press CTRL-D or CTRL-C
par_show_limits bar car far
par_show_limits ### BUG: empty lines with --show-limit
par_show_limits Maximal size of command: 131xxx
par_show_limits Maximal usable size of command: 64xxx
par_show_limits Maximal size of command: 130xxx
par_show_limits Maximal usable size of command: 63xxx
par_show_limits
par_show_limits Execution will continue now, and it will try to read its input
par_show_limits and run commands; if this is not what you wanted to happen, please

View file

@ -219,74 +219,74 @@ par_command_len_shellquote -Slo -j10 ' 10 7 0 0 0
par_command_len_shellquote -Slo -j10 ' 10 8 0 0 0
par_command_len_shellquote -Slo -j10 ' 10 9 0 0 0
par_command_len_shellquote -Slo -j10 ' 10 10 0 0 0
par_command_len_shellquote -Slo -j10 " 1 9 parallel: Error: Command line too long (98xxx >= 64xxx) at input 0: "
par_command_len_shellquote -Slo -j10 " 1 10 parallel: Error: Command line too long (295xxx >= 64xxx) at input 0: "
par_command_len_shellquote -Slo -j10 " 2 8 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: ""
par_command_len_shellquote -Slo -j10 " 2 9 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: ""
par_command_len_shellquote -Slo -j10 " 2 10 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: ""
par_command_len_shellquote -Slo -j10 " 3 8 parallel: Error: Command line too long (98xxx >= 64xxx) at input 0: """
par_command_len_shellquote -Slo -j10 " 3 9 parallel: Error: Command line too long (295xxx >= 64xxx) at input 0: """
par_command_len_shellquote -Slo -j10 " 3 10 parallel: Error: Command line too long (885xxx >= 64xxx) at input 0: """
par_command_len_shellquote -Slo -j10 " 4 8 parallel: Error: Command line too long (131xxx >= 64xxx) at input 0: """"
par_command_len_shellquote -Slo -j10 " 4 9 parallel: Error: Command line too long (393xxx >= 64xxx) at input 0: """"
par_command_len_shellquote -Slo -j10 " 4 10 parallel: Error: Command line too long (1180xxx >= 64xxx) at input 0: """"
par_command_len_shellquote -Slo -j10 " 5 8 parallel: Error: Command line too long (164xxx >= 64xxx) at input 0: """""
par_command_len_shellquote -Slo -j10 " 5 9 parallel: Error: Command line too long (492xxx >= 64xxx) at input 0: """""
par_command_len_shellquote -Slo -j10 " 5 10 parallel: Error: Command line too long (1476xxx >= 64xxx) at input 0: """""
par_command_len_shellquote -Slo -j10 " 6 7 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: """"""
par_command_len_shellquote -Slo -j10 " 6 8 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: """"""
par_command_len_shellquote -Slo -j10 " 6 9 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: """"""
par_command_len_shellquote -Slo -j10 " 6 10 parallel: Error: Command line too long (1771xxx >= 64xxx) at input 0: """"""
par_command_len_shellquote -Slo -j10 " 7 7 parallel: Error: Command line too long (76xxx >= 64xxx) at input 0: """""""
par_command_len_shellquote -Slo -j10 " 7 8 parallel: Error: Command line too long (229xxx >= 64xxx) at input 0: """""""
par_command_len_shellquote -Slo -j10 " 7 9 parallel: Error: Command line too long (688xxx >= 64xxx) at input 0: """""""
par_command_len_shellquote -Slo -j10 " 7 10 parallel: Error: Command line too long (2066xxx >= 64xxx) at input 0: """""""
par_command_len_shellquote -Slo -j10 " 8 7 parallel: Error: Command line too long (87xxx >= 64xxx) at input 0: """"""""
par_command_len_shellquote -Slo -j10 " 8 8 parallel: Error: Command line too long (262xxx >= 64xxx) at input 0: """"""""
par_command_len_shellquote -Slo -j10 " 8 9 parallel: Error: Command line too long (787xxx >= 64xxx) at input 0: """"""""
par_command_len_shellquote -Slo -j10 " 8 10 parallel: Error: Command line too long (2361xxx >= 64xxx) at input 0: """"""""
par_command_len_shellquote -Slo -j10 " 9 7 parallel: Error: Command line too long (98xxx >= 64xxx) at input 0: """""""""
par_command_len_shellquote -Slo -j10 " 9 8 parallel: Error: Command line too long (295xxx >= 64xxx) at input 0: """""""""
par_command_len_shellquote -Slo -j10 " 9 9 parallel: Error: Command line too long (885xxx >= 64xxx) at input 0: """""""""
par_command_len_shellquote -Slo -j10 " 9 10 parallel: Error: Command line too long (2657xxx >= 64xxx) at input 0: """""""""
par_command_len_shellquote -Slo -j10 " 10 7 parallel: Error: Command line too long (109xxx >= 64xxx) at input 0: """"""""""
par_command_len_shellquote -Slo -j10 " 10 8 parallel: Error: Command line too long (328xxx >= 64xxx) at input 0: """"""""""
par_command_len_shellquote -Slo -j10 " 10 9 parallel: Error: Command line too long (984xxx >= 64xxx) at input 0: """"""""""
par_command_len_shellquote -Slo -j10 " 10 10 parallel: Error: Command line too long (2952xxx >= 64xxx) at input 0: """"""""""
par_command_len_shellquote -Slo -j10 ' 1 9 parallel: Error: Command line too long (98xxx >= 64xxx) at input 0: '
par_command_len_shellquote -Slo -j10 ' 1 10 parallel: Error: Command line too long (295xxx >= 64xxx) at input 0: '
par_command_len_shellquote -Slo -j10 ' 2 8 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: ''
par_command_len_shellquote -Slo -j10 ' 2 9 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: ''
par_command_len_shellquote -Slo -j10 ' 2 10 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: ''
par_command_len_shellquote -Slo -j10 ' 3 8 parallel: Error: Command line too long (98xxx >= 64xxx) at input 0: '''
par_command_len_shellquote -Slo -j10 ' 3 9 parallel: Error: Command line too long (295xxx >= 64xxx) at input 0: '''
par_command_len_shellquote -Slo -j10 ' 3 10 parallel: Error: Command line too long (885xxx >= 64xxx) at input 0: '''
par_command_len_shellquote -Slo -j10 ' 4 8 parallel: Error: Command line too long (131xxx >= 64xxx) at input 0: ''''
par_command_len_shellquote -Slo -j10 ' 4 9 parallel: Error: Command line too long (393xxx >= 64xxx) at input 0: ''''
par_command_len_shellquote -Slo -j10 ' 4 10 parallel: Error: Command line too long (1180xxx >= 64xxx) at input 0: ''''
par_command_len_shellquote -Slo -j10 ' 5 8 parallel: Error: Command line too long (164xxx >= 64xxx) at input 0: '''''
par_command_len_shellquote -Slo -j10 ' 5 9 parallel: Error: Command line too long (492xxx >= 64xxx) at input 0: '''''
par_command_len_shellquote -Slo -j10 ' 5 10 parallel: Error: Command line too long (1476xxx >= 64xxx) at input 0: '''''
par_command_len_shellquote -Slo -j10 ' 6 7 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: ''''''
par_command_len_shellquote -Slo -j10 ' 6 8 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: ''''''
par_command_len_shellquote -Slo -j10 ' 6 9 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: ''''''
par_command_len_shellquote -Slo -j10 ' 6 10 parallel: Error: Command line too long (1771xxx >= 64xxx) at input 0: ''''''
par_command_len_shellquote -Slo -j10 ' 7 7 parallel: Error: Command line too long (76xxx >= 64xxx) at input 0: '''''''
par_command_len_shellquote -Slo -j10 ' 7 8 parallel: Error: Command line too long (229xxx >= 64xxx) at input 0: '''''''
par_command_len_shellquote -Slo -j10 ' 7 9 parallel: Error: Command line too long (688xxx >= 64xxx) at input 0: '''''''
par_command_len_shellquote -Slo -j10 ' 7 10 parallel: Error: Command line too long (2066xxx >= 64xxx) at input 0: '''''''
par_command_len_shellquote -Slo -j10 ' 8 7 parallel: Error: Command line too long (87xxx >= 64xxx) at input 0: ''''''''
par_command_len_shellquote -Slo -j10 ' 8 8 parallel: Error: Command line too long (262xxx >= 64xxx) at input 0: ''''''''
par_command_len_shellquote -Slo -j10 ' 8 9 parallel: Error: Command line too long (787xxx >= 64xxx) at input 0: ''''''''
par_command_len_shellquote -Slo -j10 ' 8 10 parallel: Error: Command line too long (2361xxx >= 64xxx) at input 0: ''''''''
par_command_len_shellquote -Slo -j10 ' 9 7 parallel: Error: Command line too long (98xxx >= 64xxx) at input 0: '''''''''
par_command_len_shellquote -Slo -j10 ' 9 8 parallel: Error: Command line too long (295xxx >= 64xxx) at input 0: '''''''''
par_command_len_shellquote -Slo -j10 ' 9 9 parallel: Error: Command line too long (885xxx >= 64xxx) at input 0: '''''''''
par_command_len_shellquote -Slo -j10 ' 9 10 parallel: Error: Command line too long (2657xxx >= 64xxx) at input 0: '''''''''
par_command_len_shellquote -Slo -j10 ' 10 7 parallel: Error: Command line too long (109xxx >= 64xxx) at input 0: ''''''''''
par_command_len_shellquote -Slo -j10 ' 10 8 parallel: Error: Command line too long (328xxx >= 64xxx) at input 0: ''''''''''
par_command_len_shellquote -Slo -j10 ' 10 9 parallel: Error: Command line too long (984xxx >= 64xxx) at input 0: ''''''''''
par_command_len_shellquote -Slo -j10 ' 10 10 parallel: Error: Command line too long (2952xxx >= 64xxx) at input 0: ''''''''''
par_command_len_shellquote -Slo -j10 " 1 9 parallel: Error: Command line too long (98xxx >= 63xxx) at input 0: "
par_command_len_shellquote -Slo -j10 " 1 10 parallel: Error: Command line too long (295xxx >= 63xxx) at input 0: "
par_command_len_shellquote -Slo -j10 " 2 8 parallel: Error: Command line too long (65xxx >= 63xxx) at input 0: ""
par_command_len_shellquote -Slo -j10 " 2 9 parallel: Error: Command line too long (196xxx >= 63xxx) at input 0: ""
par_command_len_shellquote -Slo -j10 " 2 10 parallel: Error: Command line too long (590xxx >= 63xxx) at input 0: ""
par_command_len_shellquote -Slo -j10 " 3 8 parallel: Error: Command line too long (98xxx >= 63xxx) at input 0: """
par_command_len_shellquote -Slo -j10 " 3 9 parallel: Error: Command line too long (295xxx >= 63xxx) at input 0: """
par_command_len_shellquote -Slo -j10 " 3 10 parallel: Error: Command line too long (885xxx >= 63xxx) at input 0: """
par_command_len_shellquote -Slo -j10 " 4 8 parallel: Error: Command line too long (131xxx >= 63xxx) at input 0: """"
par_command_len_shellquote -Slo -j10 " 4 9 parallel: Error: Command line too long (393xxx >= 63xxx) at input 0: """"
par_command_len_shellquote -Slo -j10 " 4 10 parallel: Error: Command line too long (1180xxx >= 63xxx) at input 0: """"
par_command_len_shellquote -Slo -j10 " 5 8 parallel: Error: Command line too long (164xxx >= 63xxx) at input 0: """""
par_command_len_shellquote -Slo -j10 " 5 9 parallel: Error: Command line too long (492xxx >= 63xxx) at input 0: """""
par_command_len_shellquote -Slo -j10 " 5 10 parallel: Error: Command line too long (1476xxx >= 63xxx) at input 0: """""
par_command_len_shellquote -Slo -j10 " 6 7 parallel: Error: Command line too long (65xxx >= 63xxx) at input 0: """"""
par_command_len_shellquote -Slo -j10 " 6 8 parallel: Error: Command line too long (196xxx >= 63xxx) at input 0: """"""
par_command_len_shellquote -Slo -j10 " 6 9 parallel: Error: Command line too long (590xxx >= 63xxx) at input 0: """"""
par_command_len_shellquote -Slo -j10 " 6 10 parallel: Error: Command line too long (1771xxx >= 63xxx) at input 0: """"""
par_command_len_shellquote -Slo -j10 " 7 7 parallel: Error: Command line too long (76xxx >= 63xxx) at input 0: """""""
par_command_len_shellquote -Slo -j10 " 7 8 parallel: Error: Command line too long (229xxx >= 63xxx) at input 0: """""""
par_command_len_shellquote -Slo -j10 " 7 9 parallel: Error: Command line too long (688xxx >= 63xxx) at input 0: """""""
par_command_len_shellquote -Slo -j10 " 7 10 parallel: Error: Command line too long (2066xxx >= 63xxx) at input 0: """""""
par_command_len_shellquote -Slo -j10 " 8 7 parallel: Error: Command line too long (87xxx >= 63xxx) at input 0: """"""""
par_command_len_shellquote -Slo -j10 " 8 8 parallel: Error: Command line too long (262xxx >= 63xxx) at input 0: """"""""
par_command_len_shellquote -Slo -j10 " 8 9 parallel: Error: Command line too long (787xxx >= 63xxx) at input 0: """"""""
par_command_len_shellquote -Slo -j10 " 8 10 parallel: Error: Command line too long (2361xxx >= 63xxx) at input 0: """"""""
par_command_len_shellquote -Slo -j10 " 9 7 parallel: Error: Command line too long (98xxx >= 63xxx) at input 0: """""""""
par_command_len_shellquote -Slo -j10 " 9 8 parallel: Error: Command line too long (295xxx >= 63xxx) at input 0: """""""""
par_command_len_shellquote -Slo -j10 " 9 9 parallel: Error: Command line too long (885xxx >= 63xxx) at input 0: """""""""
par_command_len_shellquote -Slo -j10 " 9 10 parallel: Error: Command line too long (2657xxx >= 63xxx) at input 0: """""""""
par_command_len_shellquote -Slo -j10 " 10 7 parallel: Error: Command line too long (109xxx >= 63xxx) at input 0: """"""""""
par_command_len_shellquote -Slo -j10 " 10 8 parallel: Error: Command line too long (328xxx >= 63xxx) at input 0: """"""""""
par_command_len_shellquote -Slo -j10 " 10 9 parallel: Error: Command line too long (984xxx >= 63xxx) at input 0: """"""""""
par_command_len_shellquote -Slo -j10 " 10 10 parallel: Error: Command line too long (2952xxx >= 63xxx) at input 0: """"""""""
par_command_len_shellquote -Slo -j10 ' 1 9 parallel: Error: Command line too long (98xxx >= 63xxx) at input 0: '
par_command_len_shellquote -Slo -j10 ' 1 10 parallel: Error: Command line too long (295xxx >= 63xxx) at input 0: '
par_command_len_shellquote -Slo -j10 ' 2 8 parallel: Error: Command line too long (65xxx >= 63xxx) at input 0: ''
par_command_len_shellquote -Slo -j10 ' 2 9 parallel: Error: Command line too long (196xxx >= 63xxx) at input 0: ''
par_command_len_shellquote -Slo -j10 ' 2 10 parallel: Error: Command line too long (590xxx >= 63xxx) at input 0: ''
par_command_len_shellquote -Slo -j10 ' 3 8 parallel: Error: Command line too long (98xxx >= 63xxx) at input 0: '''
par_command_len_shellquote -Slo -j10 ' 3 9 parallel: Error: Command line too long (295xxx >= 63xxx) at input 0: '''
par_command_len_shellquote -Slo -j10 ' 3 10 parallel: Error: Command line too long (885xxx >= 63xxx) at input 0: '''
par_command_len_shellquote -Slo -j10 ' 4 8 parallel: Error: Command line too long (131xxx >= 63xxx) at input 0: ''''
par_command_len_shellquote -Slo -j10 ' 4 9 parallel: Error: Command line too long (393xxx >= 63xxx) at input 0: ''''
par_command_len_shellquote -Slo -j10 ' 4 10 parallel: Error: Command line too long (1180xxx >= 63xxx) at input 0: ''''
par_command_len_shellquote -Slo -j10 ' 5 8 parallel: Error: Command line too long (164xxx >= 63xxx) at input 0: '''''
par_command_len_shellquote -Slo -j10 ' 5 9 parallel: Error: Command line too long (492xxx >= 63xxx) at input 0: '''''
par_command_len_shellquote -Slo -j10 ' 5 10 parallel: Error: Command line too long (1476xxx >= 63xxx) at input 0: '''''
par_command_len_shellquote -Slo -j10 ' 6 7 parallel: Error: Command line too long (65xxx >= 63xxx) at input 0: ''''''
par_command_len_shellquote -Slo -j10 ' 6 8 parallel: Error: Command line too long (196xxx >= 63xxx) at input 0: ''''''
par_command_len_shellquote -Slo -j10 ' 6 9 parallel: Error: Command line too long (590xxx >= 63xxx) at input 0: ''''''
par_command_len_shellquote -Slo -j10 ' 6 10 parallel: Error: Command line too long (1771xxx >= 63xxx) at input 0: ''''''
par_command_len_shellquote -Slo -j10 ' 7 7 parallel: Error: Command line too long (76xxx >= 63xxx) at input 0: '''''''
par_command_len_shellquote -Slo -j10 ' 7 8 parallel: Error: Command line too long (229xxx >= 63xxx) at input 0: '''''''
par_command_len_shellquote -Slo -j10 ' 7 9 parallel: Error: Command line too long (688xxx >= 63xxx) at input 0: '''''''
par_command_len_shellquote -Slo -j10 ' 7 10 parallel: Error: Command line too long (2066xxx >= 63xxx) at input 0: '''''''
par_command_len_shellquote -Slo -j10 ' 8 7 parallel: Error: Command line too long (87xxx >= 63xxx) at input 0: ''''''''
par_command_len_shellquote -Slo -j10 ' 8 8 parallel: Error: Command line too long (262xxx >= 63xxx) at input 0: ''''''''
par_command_len_shellquote -Slo -j10 ' 8 9 parallel: Error: Command line too long (787xxx >= 63xxx) at input 0: ''''''''
par_command_len_shellquote -Slo -j10 ' 8 10 parallel: Error: Command line too long (2361xxx >= 63xxx) at input 0: ''''''''
par_command_len_shellquote -Slo -j10 ' 9 7 parallel: Error: Command line too long (98xxx >= 63xxx) at input 0: '''''''''
par_command_len_shellquote -Slo -j10 ' 9 8 parallel: Error: Command line too long (295xxx >= 63xxx) at input 0: '''''''''
par_command_len_shellquote -Slo -j10 ' 9 9 parallel: Error: Command line too long (885xxx >= 63xxx) at input 0: '''''''''
par_command_len_shellquote -Slo -j10 ' 9 10 parallel: Error: Command line too long (2657xxx >= 63xxx) at input 0: '''''''''
par_command_len_shellquote -Slo -j10 ' 10 7 parallel: Error: Command line too long (109xxx >= 63xxx) at input 0: ''''''''''
par_command_len_shellquote -Slo -j10 ' 10 8 parallel: Error: Command line too long (328xxx >= 63xxx) at input 0: ''''''''''
par_command_len_shellquote -Slo -j10 ' 10 9 parallel: Error: Command line too long (984xxx >= 63xxx) at input 0: ''''''''''
par_command_len_shellquote -Slo -j10 ' 10 10 parallel: Error: Command line too long (2952xxx >= 63xxx) at input 0: ''''''''''
par_command_len_shellquote " 1 1 1 2 6
par_command_len_shellquote " 1 2 1 2 12
par_command_len_shellquote " 1 3 1 2 30
@ -487,86 +487,86 @@ par_command_len_shellquote ' 10 7 0 0 0
par_command_len_shellquote ' 10 8 0 0 0
par_command_len_shellquote ' 10 9 0 0 0
par_command_len_shellquote ' 10 10 0 0 0
par_command_len_shellquote " 1 8 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: "
par_command_len_shellquote " 1 9 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: "
par_command_len_shellquote " 1 10 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: "
par_command_len_shellquote " 2 8 parallel: Error: Command line too long (131xxx >= 64xxx) at input 0: ""
par_command_len_shellquote " 2 9 parallel: Error: Command line too long (393xxx >= 64xxx) at input 0: ""
par_command_len_shellquote " 2 10 parallel: Error: Command line too long (1180xxx >= 64xxx) at input 0: ""
par_command_len_shellquote " 3 7 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: """
par_command_len_shellquote " 3 8 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: """
par_command_len_shellquote " 3 9 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: """
par_command_len_shellquote " 3 10 parallel: Error: Command line too long (1771xxx >= 64xxx) at input 0: """
par_command_len_shellquote " 4 7 parallel: Error: Command line too long (87xxx >= 64xxx) at input 0: """"
par_command_len_shellquote " 4 8 parallel: Error: Command line too long (262xxx >= 64xxx) at input 0: """"
par_command_len_shellquote " 4 9 parallel: Error: Command line too long (787xxx >= 64xxx) at input 0: """"
par_command_len_shellquote " 4 10 parallel: Error: Command line too long (2361xxx >= 64xxx) at input 0: """"
par_command_len_shellquote " 5 7 parallel: Error: Command line too long (109xxx >= 64xxx) at input 0: """""
par_command_len_shellquote " 5 8 parallel: Error: Command line too long (328xxx >= 64xxx) at input 0: """""
par_command_len_shellquote " 5 9 parallel: Error: Command line too long (984xxx >= 64xxx) at input 0: """""
par_command_len_shellquote " 5 10 parallel: Error: Command line too long (2952xxx >= 64xxx) at input 0: """""
par_command_len_shellquote " 6 7 parallel: Error: Command line too long (131xxx >= 64xxx) at input 0: """"""
par_command_len_shellquote " 6 8 parallel: Error: Command line too long (393xxx >= 64xxx) at input 0: """"""
par_command_len_shellquote " 6 9 parallel: Error: Command line too long (1180xxx >= 64xxx) at input 0: """"""
par_command_len_shellquote " 6 10 parallel: Error: Command line too long (3542xxx >= 64xxx) at input 0: """"""
par_command_len_shellquote " 7 7 parallel: Error: Command line too long (153xxx >= 64xxx) at input 0: """""""
par_command_len_shellquote " 7 8 parallel: Error: Command line too long (459xxx >= 64xxx) at input 0: """""""
par_command_len_shellquote " 7 9 parallel: Error: Command line too long (1377xxx >= 64xxx) at input 0: """""""
par_command_len_shellquote " 7 10 parallel: Error: Command line too long (4133xxx >= 64xxx) at input 0: """""""
par_command_len_shellquote " 8 7 parallel: Error: Command line too long (174xxx >= 64xxx) at input 0: """"""""
par_command_len_shellquote " 8 8 parallel: Error: Command line too long (524xxx >= 64xxx) at input 0: """"""""
par_command_len_shellquote " 8 9 parallel: Error: Command line too long (1574xxx >= 64xxx) at input 0: """"""""
par_command_len_shellquote " 8 10 parallel: Error: Command line too long (4723xxx >= 64xxx) at input 0: """"""""
par_command_len_shellquote " 9 6 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: """""""""
par_command_len_shellquote " 9 7 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: """""""""
par_command_len_shellquote " 9 8 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: """""""""
par_command_len_shellquote " 9 9 parallel: Error: Command line too long (1771xxx >= 64xxx) at input 0: """""""""
par_command_len_shellquote " 9 10 parallel: Error: Command line too long (5314xxx >= 64xxx) at input 0: """""""""
par_command_len_shellquote " 10 6 parallel: Error: Command line too long (72xxx >= 64xxx) at input 0: """"""""""
par_command_len_shellquote " 10 7 parallel: Error: Command line too long (218xxx >= 64xxx) at input 0: """"""""""
par_command_len_shellquote " 10 8 parallel: Error: Command line too long (656xxx >= 64xxx) at input 0: """"""""""
par_command_len_shellquote " 10 9 parallel: Error: Command line too long (1968xxx >= 64xxx) at input 0: """"""""""
par_command_len_shellquote " 10 10 parallel: Error: Command line too long (5904xxx >= 64xxx) at input 0: """"""""""
par_command_len_shellquote ' 1 8 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: '
par_command_len_shellquote ' 1 9 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: '
par_command_len_shellquote ' 1 10 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: '
par_command_len_shellquote ' 2 8 parallel: Error: Command line too long (131xxx >= 64xxx) at input 0: ''
par_command_len_shellquote ' 2 9 parallel: Error: Command line too long (393xxx >= 64xxx) at input 0: ''
par_command_len_shellquote ' 2 10 parallel: Error: Command line too long (1180xxx >= 64xxx) at input 0: ''
par_command_len_shellquote ' 3 7 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: '''
par_command_len_shellquote ' 3 8 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: '''
par_command_len_shellquote ' 3 9 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: '''
par_command_len_shellquote ' 3 10 parallel: Error: Command line too long (1771xxx >= 64xxx) at input 0: '''
par_command_len_shellquote ' 4 7 parallel: Error: Command line too long (87xxx >= 64xxx) at input 0: ''''
par_command_len_shellquote ' 4 8 parallel: Error: Command line too long (262xxx >= 64xxx) at input 0: ''''
par_command_len_shellquote ' 4 9 parallel: Error: Command line too long (787xxx >= 64xxx) at input 0: ''''
par_command_len_shellquote ' 4 10 parallel: Error: Command line too long (2361xxx >= 64xxx) at input 0: ''''
par_command_len_shellquote ' 5 7 parallel: Error: Command line too long (109xxx >= 64xxx) at input 0: '''''
par_command_len_shellquote ' 5 8 parallel: Error: Command line too long (328xxx >= 64xxx) at input 0: '''''
par_command_len_shellquote ' 5 9 parallel: Error: Command line too long (984xxx >= 64xxx) at input 0: '''''
par_command_len_shellquote ' 5 10 parallel: Error: Command line too long (2952xxx >= 64xxx) at input 0: '''''
par_command_len_shellquote ' 6 7 parallel: Error: Command line too long (131xxx >= 64xxx) at input 0: ''''''
par_command_len_shellquote ' 6 8 parallel: Error: Command line too long (393xxx >= 64xxx) at input 0: ''''''
par_command_len_shellquote ' 6 9 parallel: Error: Command line too long (1180xxx >= 64xxx) at input 0: ''''''
par_command_len_shellquote ' 6 10 parallel: Error: Command line too long (3542xxx >= 64xxx) at input 0: ''''''
par_command_len_shellquote ' 7 7 parallel: Error: Command line too long (153xxx >= 64xxx) at input 0: '''''''
par_command_len_shellquote ' 7 8 parallel: Error: Command line too long (459xxx >= 64xxx) at input 0: '''''''
par_command_len_shellquote ' 7 9 parallel: Error: Command line too long (1377xxx >= 64xxx) at input 0: '''''''
par_command_len_shellquote ' 7 10 parallel: Error: Command line too long (4133xxx >= 64xxx) at input 0: '''''''
par_command_len_shellquote ' 8 7 parallel: Error: Command line too long (174xxx >= 64xxx) at input 0: ''''''''
par_command_len_shellquote ' 8 8 parallel: Error: Command line too long (524xxx >= 64xxx) at input 0: ''''''''
par_command_len_shellquote ' 8 9 parallel: Error: Command line too long (1574xxx >= 64xxx) at input 0: ''''''''
par_command_len_shellquote ' 8 10 parallel: Error: Command line too long (4723xxx >= 64xxx) at input 0: ''''''''
par_command_len_shellquote ' 9 6 parallel: Error: Command line too long (65xxx >= 64xxx) at input 0: '''''''''
par_command_len_shellquote ' 9 7 parallel: Error: Command line too long (196xxx >= 64xxx) at input 0: '''''''''
par_command_len_shellquote ' 9 8 parallel: Error: Command line too long (590xxx >= 64xxx) at input 0: '''''''''
par_command_len_shellquote ' 9 9 parallel: Error: Command line too long (1771xxx >= 64xxx) at input 0: '''''''''
par_command_len_shellquote ' 9 10 parallel: Error: Command line too long (5314xxx >= 64xxx) at input 0: '''''''''
par_command_len_shellquote ' 10 6 parallel: Error: Command line too long (72xxx >= 64xxx) at input 0: ''''''''''
par_command_len_shellquote ' 10 7 parallel: Error: Command line too long (218xxx >= 64xxx) at input 0: ''''''''''
par_command_len_shellquote ' 10 8 parallel: Error: Command line too long (656xxx >= 64xxx) at input 0: ''''''''''
par_command_len_shellquote ' 10 9 parallel: Error: Command line too long (1968xxx >= 64xxx) at input 0: ''''''''''
par_command_len_shellquote ' 10 10 parallel: Error: Command line too long (5904xxx >= 64xxx) at input 0: ''''''''''
par_command_len_shellquote " 1 8 parallel: Error: Command line too long (65xxx >= 63xxx) at input 0: "
par_command_len_shellquote " 1 9 parallel: Error: Command line too long (196xxx >= 63xxx) at input 0: "
par_command_len_shellquote " 1 10 parallel: Error: Command line too long (590xxx >= 63xxx) at input 0: "
par_command_len_shellquote " 2 8 parallel: Error: Command line too long (131xxx >= 63xxx) at input 0: ""
par_command_len_shellquote " 2 9 parallel: Error: Command line too long (393xxx >= 63xxx) at input 0: ""
par_command_len_shellquote " 2 10 parallel: Error: Command line too long (1180xxx >= 63xxx) at input 0: ""
par_command_len_shellquote " 3 7 parallel: Error: Command line too long (65xxx >= 63xxx) at input 0: """
par_command_len_shellquote " 3 8 parallel: Error: Command line too long (196xxx >= 63xxx) at input 0: """
par_command_len_shellquote " 3 9 parallel: Error: Command line too long (590xxx >= 63xxx) at input 0: """
par_command_len_shellquote " 3 10 parallel: Error: Command line too long (1771xxx >= 63xxx) at input 0: """
par_command_len_shellquote " 4 7 parallel: Error: Command line too long (87xxx >= 63xxx) at input 0: """"
par_command_len_shellquote " 4 8 parallel: Error: Command line too long (262xxx >= 63xxx) at input 0: """"
par_command_len_shellquote " 4 9 parallel: Error: Command line too long (787xxx >= 63xxx) at input 0: """"
par_command_len_shellquote " 4 10 parallel: Error: Command line too long (2361xxx >= 63xxx) at input 0: """"
par_command_len_shellquote " 5 7 parallel: Error: Command line too long (109xxx >= 63xxx) at input 0: """""
par_command_len_shellquote " 5 8 parallel: Error: Command line too long (328xxx >= 63xxx) at input 0: """""
par_command_len_shellquote " 5 9 parallel: Error: Command line too long (984xxx >= 63xxx) at input 0: """""
par_command_len_shellquote " 5 10 parallel: Error: Command line too long (2952xxx >= 63xxx) at input 0: """""
par_command_len_shellquote " 6 7 parallel: Error: Command line too long (131xxx >= 63xxx) at input 0: """"""
par_command_len_shellquote " 6 8 parallel: Error: Command line too long (393xxx >= 63xxx) at input 0: """"""
par_command_len_shellquote " 6 9 parallel: Error: Command line too long (1180xxx >= 63xxx) at input 0: """"""
par_command_len_shellquote " 6 10 parallel: Error: Command line too long (3542xxx >= 63xxx) at input 0: """"""
par_command_len_shellquote " 7 7 parallel: Error: Command line too long (153xxx >= 63xxx) at input 0: """""""
par_command_len_shellquote " 7 8 parallel: Error: Command line too long (459xxx >= 63xxx) at input 0: """""""
par_command_len_shellquote " 7 9 parallel: Error: Command line too long (1377xxx >= 63xxx) at input 0: """""""
par_command_len_shellquote " 7 10 parallel: Error: Command line too long (4133xxx >= 63xxx) at input 0: """""""
par_command_len_shellquote " 8 7 parallel: Error: Command line too long (174xxx >= 63xxx) at input 0: """"""""
par_command_len_shellquote " 8 8 parallel: Error: Command line too long (524xxx >= 63xxx) at input 0: """"""""
par_command_len_shellquote " 8 9 parallel: Error: Command line too long (1574xxx >= 63xxx) at input 0: """"""""
par_command_len_shellquote " 8 10 parallel: Error: Command line too long (4723xxx >= 63xxx) at input 0: """"""""
par_command_len_shellquote " 9 6 parallel: Error: Command line too long (65xxx >= 63xxx) at input 0: """""""""
par_command_len_shellquote " 9 7 parallel: Error: Command line too long (196xxx >= 63xxx) at input 0: """""""""
par_command_len_shellquote " 9 8 parallel: Error: Command line too long (590xxx >= 63xxx) at input 0: """""""""
par_command_len_shellquote " 9 9 parallel: Error: Command line too long (1771xxx >= 63xxx) at input 0: """""""""
par_command_len_shellquote " 9 10 parallel: Error: Command line too long (5314xxx >= 63xxx) at input 0: """""""""
par_command_len_shellquote " 10 6 parallel: Error: Command line too long (72xxx >= 63xxx) at input 0: """"""""""
par_command_len_shellquote " 10 7 parallel: Error: Command line too long (218xxx >= 63xxx) at input 0: """"""""""
par_command_len_shellquote " 10 8 parallel: Error: Command line too long (656xxx >= 63xxx) at input 0: """"""""""
par_command_len_shellquote " 10 9 parallel: Error: Command line too long (1968xxx >= 63xxx) at input 0: """"""""""
par_command_len_shellquote " 10 10 parallel: Error: Command line too long (5904xxx >= 63xxx) at input 0: """"""""""
par_command_len_shellquote ' 1 8 parallel: Error: Command line too long (65xxx >= 63xxx) at input 0: '
par_command_len_shellquote ' 1 9 parallel: Error: Command line too long (196xxx >= 63xxx) at input 0: '
par_command_len_shellquote ' 1 10 parallel: Error: Command line too long (590xxx >= 63xxx) at input 0: '
par_command_len_shellquote ' 2 8 parallel: Error: Command line too long (131xxx >= 63xxx) at input 0: ''
par_command_len_shellquote ' 2 9 parallel: Error: Command line too long (393xxx >= 63xxx) at input 0: ''
par_command_len_shellquote ' 2 10 parallel: Error: Command line too long (1180xxx >= 63xxx) at input 0: ''
par_command_len_shellquote ' 3 7 parallel: Error: Command line too long (65xxx >= 63xxx) at input 0: '''
par_command_len_shellquote ' 3 8 parallel: Error: Command line too long (196xxx >= 63xxx) at input 0: '''
par_command_len_shellquote ' 3 9 parallel: Error: Command line too long (590xxx >= 63xxx) at input 0: '''
par_command_len_shellquote ' 3 10 parallel: Error: Command line too long (1771xxx >= 63xxx) at input 0: '''
par_command_len_shellquote ' 4 7 parallel: Error: Command line too long (87xxx >= 63xxx) at input 0: ''''
par_command_len_shellquote ' 4 8 parallel: Error: Command line too long (262xxx >= 63xxx) at input 0: ''''
par_command_len_shellquote ' 4 9 parallel: Error: Command line too long (787xxx >= 63xxx) at input 0: ''''
par_command_len_shellquote ' 4 10 parallel: Error: Command line too long (2361xxx >= 63xxx) at input 0: ''''
par_command_len_shellquote ' 5 7 parallel: Error: Command line too long (109xxx >= 63xxx) at input 0: '''''
par_command_len_shellquote ' 5 8 parallel: Error: Command line too long (328xxx >= 63xxx) at input 0: '''''
par_command_len_shellquote ' 5 9 parallel: Error: Command line too long (984xxx >= 63xxx) at input 0: '''''
par_command_len_shellquote ' 5 10 parallel: Error: Command line too long (2952xxx >= 63xxx) at input 0: '''''
par_command_len_shellquote ' 6 7 parallel: Error: Command line too long (131xxx >= 63xxx) at input 0: ''''''
par_command_len_shellquote ' 6 8 parallel: Error: Command line too long (393xxx >= 63xxx) at input 0: ''''''
par_command_len_shellquote ' 6 9 parallel: Error: Command line too long (1180xxx >= 63xxx) at input 0: ''''''
par_command_len_shellquote ' 6 10 parallel: Error: Command line too long (3542xxx >= 63xxx) at input 0: ''''''
par_command_len_shellquote ' 7 7 parallel: Error: Command line too long (153xxx >= 63xxx) at input 0: '''''''
par_command_len_shellquote ' 7 8 parallel: Error: Command line too long (459xxx >= 63xxx) at input 0: '''''''
par_command_len_shellquote ' 7 9 parallel: Error: Command line too long (1377xxx >= 63xxx) at input 0: '''''''
par_command_len_shellquote ' 7 10 parallel: Error: Command line too long (4133xxx >= 63xxx) at input 0: '''''''
par_command_len_shellquote ' 8 7 parallel: Error: Command line too long (174xxx >= 63xxx) at input 0: ''''''''
par_command_len_shellquote ' 8 8 parallel: Error: Command line too long (524xxx >= 63xxx) at input 0: ''''''''
par_command_len_shellquote ' 8 9 parallel: Error: Command line too long (1574xxx >= 63xxx) at input 0: ''''''''
par_command_len_shellquote ' 8 10 parallel: Error: Command line too long (4723xxx >= 63xxx) at input 0: ''''''''
par_command_len_shellquote ' 9 6 parallel: Error: Command line too long (65xxx >= 63xxx) at input 0: '''''''''
par_command_len_shellquote ' 9 7 parallel: Error: Command line too long (196xxx >= 63xxx) at input 0: '''''''''
par_command_len_shellquote ' 9 8 parallel: Error: Command line too long (590xxx >= 63xxx) at input 0: '''''''''
par_command_len_shellquote ' 9 9 parallel: Error: Command line too long (1771xxx >= 63xxx) at input 0: '''''''''
par_command_len_shellquote ' 9 10 parallel: Error: Command line too long (5314xxx >= 63xxx) at input 0: '''''''''
par_command_len_shellquote ' 10 6 parallel: Error: Command line too long (72xxx >= 63xxx) at input 0: ''''''''''
par_command_len_shellquote ' 10 7 parallel: Error: Command line too long (218xxx >= 63xxx) at input 0: ''''''''''
par_command_len_shellquote ' 10 8 parallel: Error: Command line too long (656xxx >= 63xxx) at input 0: ''''''''''
par_command_len_shellquote ' 10 9 parallel: Error: Command line too long (1968xxx >= 63xxx) at input 0: ''''''''''
par_command_len_shellquote ' 10 10 parallel: Error: Command line too long (5904xxx >= 63xxx) at input 0: ''''''''''
par_basefile_cleanup ### bug #46520: --basefile cleans up without --cleanup
par_basefile_cleanup bug_46520
par_basefile_cleanup bug_46520

View file

@ -459,7 +459,7 @@ echo '### true < 32767-ys.xi'
### true < 32767-ys.xi
stdout xargs true < 32767-ys.xi
stdout parallel -k true < 32767-ys.xi
parallel: Error: Command line too long (65541 >= 64031) at input 0: y y y y y y y y y y y y y y y y y y y y y y y y y ...
parallel: Error: Command line too long (65541 >= 63664) at input 0: y y y y y y y y y y y y y y y y y y y y y y y y y ...
echo '### true < 16383-ys.xi'
### true < 16383-ys.xi
stdout xargs true < 16383-ys.xi

View file

@ -1,16 +1,16 @@
echo '### Test of xargs -m command lines > 130k'; seq 1 60000 | parallel -m -j1 echo a{}b{}c | tee >(wc >/tmp/awc$$) >(sort | md5sum) >/tmp/a$$; wait; CHAR=$(cat /tmp/a$$ | wc -c); LINES=$(cat /tmp/a$$ | wc -l); echo "Chars per line:" $(echo "$CHAR/$LINES" | bc); cat /tmp/awc$$; rm /tmp/a$$ /tmp/awc$$
### Test of xargs -m command lines > 130k
2f0d9d11a071f5dbe6bd876a19499ff5 -
a3c892de2524f32f78550b47336eadd0 -
Chars per line: 63437
11 119989 697810
echo '### Test of xargs -X command lines > 130k'; seq 1 60000 | parallel -X -j1 echo a{}b{}c | tee >(wc >/tmp/bwc$$) >(sort | (sleep 1; md5sum)) >/tmp/b$$; wait; CHAR=$(cat /tmp/b$$ | wc -c); LINES=$(cat /tmp/b$$ | wc -l); echo "Chars per line:" $(echo "$CHAR/$LINES" | bc); cat /tmp/bwc$$; rm /tmp/b$$ /tmp/bwc$$
### Test of xargs -X command lines > 130k
42d5c115907de0044ef988a0639204cd -
a98747678a5d18c4470a073812437ab2 -
Chars per line: 62906
13 60000 817788
echo '### Test of xargs -m command lines > 130k'; seq 1 60000 | parallel -k -j1 -m echo | md5sum
### Test of xargs -m command lines > 130k
0896c693a7d42440f31c13c803d27df2 -
ba869d577103ef0cc6b6045c2a618c43 -
echo '### This causes problems if we kill child processes'; # 2>/dev/null to avoid parallel: Warning: Starting 45 processes took > 2 sec.
### This causes problems if we kill child processes
seq 2 40 | parallel -j 0 seq 1 10 2>/dev/null | sort | md5sum

View file

@ -59,9 +59,9 @@ please cite as described in 'parallel --citation'.
echo '### bug #39787: --xargs broken'
### bug #39787: --xargs broken
nice perl -e 'for(1..30000){print "$_\n"}' | $NICEPAR --xargs -k echo | perl -ne 'print length $_,"\n"'
64026
64026
40842
63654
63654
41586
echo '### --delay should grow by 3 sec per arg'
### --delay should grow by 3 sec per arg
stdout /usr/bin/time -f %e parallel --delay 3 true ::: 1 2 | perl -ne '$_ >= 3 and $_ <= 8 and print "OK\n"'

View file

@ -343,7 +343,7 @@ a1b1^c1[.}c
echo "### BUG: The length for -X is not close to max (131072)"
### BUG: The length for -X is not close to max (131072)
seq 1 4000 | nice parallel -k -X echo {.} aa {}{.} {}{}d{} {}dd{}d{.} |head -n 1 |wc
1 6725 64004
1 6693 63652
echo '### Test -N'
### Test -N
seq 1 5 | $NICEPAR -kN3 echo {1} {2} {3}