parallel/testsuite/wanted-results/parallel-local-30s

1857 lines
98 KiB
Plaintext
Raw Permalink Normal View History

par_bin ### Test --bin
par_bin 2 2 4
par_bin 2 2 4
par_bin 3 3 6
par_bin 3 3 7
par_bin 2 4 8
par_bin 2 4 8
par_bin 3 6 13
par_bin 3 6 13
par_bin ### Test --bin with expression that gives 1..n
par_bin 0 0 0
par_bin 0 0 0
par_bin 5 10 21
par_bin 5 10 21
par_bin ### Test --bin with expression that gives 0..n-1
par_bin 0 0 0
par_bin 0 0 0
par_bin 5 10 21
par_bin 5 10 21
par_bin ### Blocks in version 20220122
par_bin 0 0 0
par_bin 0 0 0
par_bin 0 0 0
par_bin 0 0 0
par_bin 0 0 0
par_bin 0 0 0
par_bin 0 0 0
par_bin 1 1 3
par_bin 1 2 4
par_bin 1 2 4
par_bin 1 2 4
par_bin 1 2 4
par_bin 1 2 4
par_bin 1 2 4
par_bin 2 4 9
par_bin 2 4 9
par_exit_code bug #52207: Exit status 0 when child job is killed, even with "now,fail=1"
par_exit_code # Ideally the command should return the same
par_exit_code # with or without parallel
par_exit_code # but fish 2.4.0 returns 1 while X.X.X returns 0
par_exit_code ash /tmp/mysleep 100 137
par_exit_code ash parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 137
par_exit_code ash parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 137
par_exit_code ash parallel --halt-on-error now,done=1 /bin/true ::: 100 0
par_exit_code ash parallel --halt-on-error now,done=1 exit ::: 100 100
par_exit_code ash true;/tmp/mysleep 100 137
par_exit_code ash parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code ash parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code ash parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
par_exit_code ash parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
par_exit_code csh /tmp/mysleep 100 137
par_exit_code csh parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 137
par_exit_code csh parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 137
par_exit_code csh parallel --halt-on-error now,done=1 /bin/true ::: 100 0
par_exit_code csh parallel --halt-on-error now,done=1 exit ::: 100 100
par_exit_code csh true;/tmp/mysleep 100 137
par_exit_code csh parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code csh parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code csh parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
par_exit_code csh parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
par_exit_code dash /tmp/mysleep 100 137
par_exit_code dash parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 137
par_exit_code dash parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 137
par_exit_code dash parallel --halt-on-error now,done=1 /bin/true ::: 100 0
par_exit_code dash parallel --halt-on-error now,done=1 exit ::: 100 100
par_exit_code dash true;/tmp/mysleep 100 137
par_exit_code dash parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code dash parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code dash parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
par_exit_code dash parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
par_exit_code fish /tmp/mysleep 100 137
par_exit_code fish parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 137
par_exit_code fish parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 137
par_exit_code fish parallel --halt-on-error now,done=1 /bin/true ::: 100 0
par_exit_code fish parallel --halt-on-error now,done=1 exit ::: 100 100
par_exit_code fish true;/tmp/mysleep 100 137
par_exit_code fish parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code fish parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code fish parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
par_exit_code fish parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
par_exit_code fizsh /tmp/mysleep 100 137
par_exit_code fizsh parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 137
par_exit_code fizsh parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 137
par_exit_code fizsh parallel --halt-on-error now,done=1 /bin/true ::: 100 0
par_exit_code fizsh parallel --halt-on-error now,done=1 exit ::: 100 100
par_exit_code fizsh true;/tmp/mysleep 100 137
par_exit_code fizsh parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code fizsh parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code fizsh parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
par_exit_code fizsh parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
2022-05-22 08:36:45 +00:00
par_exit_code ksh2020 /tmp/mysleep 100 open3: exec of ksh2020 -c /tmp/mysleep 100 failed: No such file or directory at -e line 1.
par_exit_code ksh2020 parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 open3: exec of ksh2020 -c parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 failed: No such file or directory at -e line 1.
par_exit_code ksh2020 parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 open3: exec of ksh2020 -c parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 failed: No such file or directory at -e line 1.
par_exit_code ksh2020 parallel --halt-on-error now,done=1 /bin/true ::: 100 open3: exec of ksh2020 -c parallel --halt-on-error now,done=1 /bin/true ::: 100 failed: No such file or directory at -e line 1.
par_exit_code ksh2020 parallel --halt-on-error now,done=1 exit ::: 100 open3: exec of ksh2020 -c parallel --halt-on-error now,done=1 exit ::: 100 failed: No such file or directory at -e line 1.
par_exit_code ksh2020 true;/tmp/mysleep 100 open3: exec of ksh2020 -c true;/tmp/mysleep 100 failed: No such file or directory at -e line 1.
par_exit_code ksh2020 parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 open3: exec of ksh2020 -c parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 failed: No such file or directory at -e line 1.
par_exit_code ksh2020 parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 open3: exec of ksh2020 -c parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 failed: No such file or directory at -e line 1.
par_exit_code ksh2020 parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 open3: exec of ksh2020 -c parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 failed: No such file or directory at -e line 1.
par_exit_code ksh2020 parallel --halt-on-error now,done=1 'true;exit' ::: 100 open3: exec of ksh2020 -c parallel --halt-on-error now,done=1 'true;exit' ::: 100 failed: No such file or directory at -e line 1.
par_exit_code posh /tmp/mysleep 100 137
par_exit_code posh parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 137
par_exit_code posh parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 137
par_exit_code posh parallel --halt-on-error now,done=1 /bin/true ::: 100 0
par_exit_code posh parallel --halt-on-error now,done=1 exit ::: 100 100
par_exit_code posh true;/tmp/mysleep 100 137
par_exit_code posh parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code posh parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code posh parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
par_exit_code posh parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
par_exit_code rc /tmp/mysleep 100 1
par_exit_code rc parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 1
par_exit_code rc parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 1
par_exit_code rc parallel --halt-on-error now,done=1 /bin/true ::: 100 0
par_exit_code rc parallel --halt-on-error now,done=1 exit ::: 100 100
par_exit_code rc true;/tmp/mysleep 100 1
par_exit_code rc parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 1
par_exit_code rc parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 1
par_exit_code rc parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
par_exit_code rc parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
par_exit_code sash /tmp/mysleep 100 255
par_exit_code sash parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 255
par_exit_code sash parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 255
par_exit_code sash parallel --halt-on-error now,done=1 /bin/true ::: 100 0
par_exit_code sash parallel --halt-on-error now,done=1 exit ::: 100 100
par_exit_code sash true;/tmp/mysleep 100 0
par_exit_code sash parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 0
par_exit_code sash parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 0
par_exit_code sash parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
par_exit_code sash parallel --halt-on-error now,done=1 'true;exit' ::: 100 0
par_exit_code sh /tmp/mysleep 100 137
par_exit_code sh parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 137
par_exit_code sh parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 137
par_exit_code sh parallel --halt-on-error now,done=1 /bin/true ::: 100 0
par_exit_code sh parallel --halt-on-error now,done=1 exit ::: 100 100
par_exit_code sh true;/tmp/mysleep 100 137
par_exit_code sh parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code sh parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code sh parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
par_exit_code sh parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
par_exit_code tcsh /tmp/mysleep 100 137
par_exit_code tcsh parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 137
par_exit_code tcsh parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 137
par_exit_code tcsh parallel --halt-on-error now,done=1 /bin/true ::: 100 0
par_exit_code tcsh parallel --halt-on-error now,done=1 exit ::: 100 100
par_exit_code tcsh true;/tmp/mysleep 100 137
par_exit_code tcsh parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code tcsh parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code tcsh parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
par_exit_code tcsh parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
par_exit_code bash /tmp/mysleep 100 0
par_exit_code bash parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 137
par_exit_code bash parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 137
par_exit_code bash parallel --halt-on-error now,done=1 /bin/true ::: 100 0
par_exit_code bash parallel --halt-on-error now,done=1 exit ::: 100 100
2022-05-22 08:36:45 +00:00
par_exit_code bash true;/tmp/mysleep 100 0
par_exit_code bash parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code bash parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code bash parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
par_exit_code bash parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
par_exit_code fdsh /tmp/mysleep 100 137
par_exit_code fdsh parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 2
par_exit_code fdsh parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 2
par_exit_code fdsh parallel --halt-on-error now,done=1 /bin/true ::: 100 2
par_exit_code fdsh parallel --halt-on-error now,done=1 exit ::: 100 100
par_exit_code fdsh true;/tmp/mysleep 100 137
par_exit_code fdsh parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 2
par_exit_code fdsh parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 2
par_exit_code fdsh parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 2
par_exit_code fdsh parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
par_exit_code ksh93 /tmp/mysleep 100 0
par_exit_code ksh93 parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 137
par_exit_code ksh93 parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 137
par_exit_code ksh93 parallel --halt-on-error now,done=1 /bin/true ::: 100 0
par_exit_code ksh93 parallel --halt-on-error now,done=1 exit ::: 100 100
par_exit_code ksh93 true;/tmp/mysleep 100 0
par_exit_code ksh93 parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code ksh93 parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code ksh93 parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
par_exit_code ksh93 parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
par_exit_code mksh /tmp/mysleep 100 0
par_exit_code mksh parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 137
par_exit_code mksh parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 137
par_exit_code mksh parallel --halt-on-error now,done=1 /bin/true ::: 100 0
par_exit_code mksh parallel --halt-on-error now,done=1 exit ::: 100 100
par_exit_code mksh true;/tmp/mysleep 100 137
par_exit_code mksh parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code mksh parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code mksh parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
par_exit_code mksh parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
par_exit_code static-sh /tmp/mysleep 100 0
par_exit_code static-sh parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 137
par_exit_code static-sh parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 137
par_exit_code static-sh parallel --halt-on-error now,done=1 /bin/true ::: 100 0
par_exit_code static-sh parallel --halt-on-error now,done=1 exit ::: 100 100
par_exit_code static-sh true;/tmp/mysleep 100 0
par_exit_code static-sh parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code static-sh parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code static-sh parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
par_exit_code static-sh parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
par_exit_code yash /tmp/mysleep 100 0
par_exit_code yash parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 137
par_exit_code yash parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 137
par_exit_code yash parallel --halt-on-error now,done=1 /bin/true ::: 100 0
par_exit_code yash parallel --halt-on-error now,done=1 exit ::: 100 100
par_exit_code yash true;/tmp/mysleep 100 0
par_exit_code yash parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code yash parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code yash parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
par_exit_code yash parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
par_exit_code zsh /tmp/mysleep 100 0
par_exit_code zsh parallel --halt-on-error now,fail=1 /tmp/mysleep ::: 100 137
par_exit_code zsh parallel --halt-on-error now,done=1 /tmp/mysleep ::: 100 137
par_exit_code zsh parallel --halt-on-error now,done=1 /bin/true ::: 100 0
par_exit_code zsh parallel --halt-on-error now,done=1 exit ::: 100 100
par_exit_code zsh true;/tmp/mysleep 100 0
par_exit_code zsh parallel --halt-on-error now,fail=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code zsh parallel --halt-on-error now,done=1 'true;/tmp/mysleep' ::: 100 137
par_exit_code zsh parallel --halt-on-error now,done=1 'true;/bin/true' ::: 100 0
par_exit_code zsh parallel --halt-on-error now,done=1 'true;exit' ::: 100 100
par_exit_code parallel: This job finished:
par_exit_code runit
par_groupby -N1 3 $_%=2 tsv \t ### test tsv | --colsep \t --groupby 3 $_%=2 -N1
par_groupby -N1 3 $_%=2 tsv \t NewRec
par_groupby -N1 3 $_%=2 tsv \t a1 b1 C1
par_groupby -N1 3 $_%=2 tsv \t 2 2 2
par_groupby -N1 3 $_%=2 tsv \t 3 2 2
par_groupby -N1 3 $_%=2 tsv \t 3 3 2
par_groupby -N1 3 $_%=2 tsv \t 3 2 4
par_groupby -N1 3 $_%=2 tsv \t 3 2 2
par_groupby -N1 3 $_%=2 tsv \t NewRec
par_groupby -N1 3 $_%=2 tsv \t 3 2 3
par_groupby -N1 3 $_%=2 tsv \t 3 1 3
par_groupby -N1 3 $_%=2 tsv \t 3 2 3
par_groupby -N1 3 $_%=2 tsv \t 3 3 3
par_groupby -N1 3 $_%=2 tsv \t NewRec
par_groupby -N1 3 $_%=2 tsv \t 3 4 4
par_groupby -N1 3 $_%=2 tsv \t 3 5 4
par_groupby -N1 3 $_%=2 ssv \s+ ### test ssv | --colsep \s+ --groupby 3 $_%=2 -N1
par_groupby -N1 3 $_%=2 ssv \s+ NewRec
par_groupby -N1 3 $_%=2 ssv \s+ a1 b1 C1
par_groupby -N1 3 $_%=2 ssv \s+ 2 2 2
par_groupby -N1 3 $_%=2 ssv \s+ 3 2 2
par_groupby -N1 3 $_%=2 ssv \s+ 3 3 2
par_groupby -N1 3 $_%=2 ssv \s+ 3 2 4
par_groupby -N1 3 $_%=2 ssv \s+ 3 2 2
par_groupby -N1 3 $_%=2 ssv \s+ NewRec
par_groupby -N1 3 $_%=2 ssv \s+ 3 2 3
par_groupby -N1 3 $_%=2 ssv \s+ 3 1 3
par_groupby -N1 3 $_%=2 ssv \s+ 3 2 3
par_groupby -N1 3 $_%=2 ssv \s+ 3 3 3
par_groupby -N1 3 $_%=2 ssv \s+ NewRec
par_groupby -N1 3 $_%=2 ssv \s+ 3 4 4
par_groupby -N1 3 $_%=2 ssv \s+ 3 5 4
par_groupby -N1 3 $_%=2 cssv [\s,]+ ### test cssv | --colsep [\s,]+ --groupby 3 $_%=2 -N1
par_groupby -N1 3 $_%=2 cssv [\s,]+ NewRec
par_groupby -N1 3 $_%=2 cssv [\s,]+ a1, b1, C1,
par_groupby -N1 3 $_%=2 cssv [\s,]+ 2 ,2 ,2 ,
par_groupby -N1 3 $_%=2 cssv [\s,]+ 3 , 2 , 2 ,
par_groupby -N1 3 $_%=2 cssv [\s,]+ 3 , 3 , 2 ,
par_groupby -N1 3 $_%=2 cssv [\s,]+ 3,,2,,4,,
par_groupby -N1 3 $_%=2 cssv [\s,]+ 3 ,,, 2 ,,, 2 ,,,
par_groupby -N1 3 $_%=2 cssv [\s,]+ NewRec
par_groupby -N1 3 $_%=2 cssv [\s,]+ 3 2 3
par_groupby -N1 3 $_%=2 cssv [\s,]+ 3 , 1 , 3 ,
par_groupby -N1 3 $_%=2 cssv [\s,]+ 3 ,2 ,3 ,
par_groupby -N1 3 $_%=2 cssv [\s,]+ 3, 3, 3,
par_groupby -N1 3 $_%=2 cssv [\s,]+ NewRec
par_groupby -N1 3 $_%=2 cssv [\s,]+ 3, ,4, ,4, ,
par_groupby -N1 3 $_%=2 cssv [\s,]+ 3 ,,5 ,,4 ,,
par_groupby -N1 3 $_%=2 csv , ### test csv | --colsep , --groupby 3 $_%=2 -N1
par_groupby -N1 3 $_%=2 csv , NewRec
par_groupby -N1 3 $_%=2 csv , a1,b1,C1,
par_groupby -N1 3 $_%=2 csv , 2,2,2,
par_groupby -N1 3 $_%=2 csv , 3,2,2,
par_groupby -N1 3 $_%=2 csv , 3,3,2,
par_groupby -N1 3 $_%=2 csv , 3,2,4,
par_groupby -N1 3 $_%=2 csv , 3,2,2,
par_groupby -N1 3 $_%=2 csv , NewRec
par_groupby -N1 3 $_%=2 csv , 3,2,3,
par_groupby -N1 3 $_%=2 csv , 3,1,3,
par_groupby -N1 3 $_%=2 csv , 3,2,3,
par_groupby -N1 3 $_%=2 csv , 3,3,3,
par_groupby -N1 3 $_%=2 csv , NewRec
par_groupby -N1 3 $_%=2 csv , 3,4,4,
par_groupby -N1 3 $_%=2 csv , 3,5,4,
par_groupby -N1 3 tsv \t ### test tsv | --colsep \t --groupby 3 -N1
par_groupby -N1 3 tsv \t NewRec
par_groupby -N1 3 tsv \t a1 b1 C1
par_groupby -N1 3 tsv \t NewRec
par_groupby -N1 3 tsv \t 2 2 2
par_groupby -N1 3 tsv \t 3 2 2
par_groupby -N1 3 tsv \t 3 3 2
par_groupby -N1 3 tsv \t NewRec
par_groupby -N1 3 tsv \t 3 2 4
par_groupby -N1 3 tsv \t NewRec
par_groupby -N1 3 tsv \t 3 2 2
par_groupby -N1 3 tsv \t NewRec
par_groupby -N1 3 tsv \t 3 2 3
par_groupby -N1 3 tsv \t 3 1 3
par_groupby -N1 3 tsv \t 3 2 3
par_groupby -N1 3 tsv \t 3 3 3
par_groupby -N1 3 tsv \t NewRec
par_groupby -N1 3 tsv \t 3 4 4
par_groupby -N1 3 tsv \t 3 5 4
par_groupby -N1 3 ssv \s+ ### test ssv | --colsep \s+ --groupby 3 -N1
par_groupby -N1 3 ssv \s+ NewRec
par_groupby -N1 3 ssv \s+ a1 b1 C1
par_groupby -N1 3 ssv \s+ NewRec
par_groupby -N1 3 ssv \s+ 2 2 2
par_groupby -N1 3 ssv \s+ 3 2 2
par_groupby -N1 3 ssv \s+ 3 3 2
par_groupby -N1 3 ssv \s+ NewRec
par_groupby -N1 3 ssv \s+ 3 2 4
par_groupby -N1 3 ssv \s+ NewRec
par_groupby -N1 3 ssv \s+ 3 2 2
par_groupby -N1 3 ssv \s+ NewRec
par_groupby -N1 3 ssv \s+ 3 2 3
par_groupby -N1 3 ssv \s+ 3 1 3
par_groupby -N1 3 ssv \s+ 3 2 3
par_groupby -N1 3 ssv \s+ 3 3 3
par_groupby -N1 3 ssv \s+ NewRec
par_groupby -N1 3 ssv \s+ 3 4 4
par_groupby -N1 3 ssv \s+ 3 5 4
par_groupby -N1 3 cssv [\s,]+ ### test cssv | --colsep [\s,]+ --groupby 3 -N1
par_groupby -N1 3 cssv [\s,]+ NewRec
par_groupby -N1 3 cssv [\s,]+ a1, b1, C1,
par_groupby -N1 3 cssv [\s,]+ NewRec
par_groupby -N1 3 cssv [\s,]+ 2 ,2 ,2 ,
par_groupby -N1 3 cssv [\s,]+ 3 , 2 , 2 ,
par_groupby -N1 3 cssv [\s,]+ 3 , 3 , 2 ,
par_groupby -N1 3 cssv [\s,]+ NewRec
par_groupby -N1 3 cssv [\s,]+ 3,,2,,4,,
par_groupby -N1 3 cssv [\s,]+ NewRec
par_groupby -N1 3 cssv [\s,]+ 3 ,,, 2 ,,, 2 ,,,
par_groupby -N1 3 cssv [\s,]+ NewRec
par_groupby -N1 3 cssv [\s,]+ 3 2 3
par_groupby -N1 3 cssv [\s,]+ 3 , 1 , 3 ,
par_groupby -N1 3 cssv [\s,]+ 3 ,2 ,3 ,
par_groupby -N1 3 cssv [\s,]+ 3, 3, 3,
par_groupby -N1 3 cssv [\s,]+ NewRec
par_groupby -N1 3 cssv [\s,]+ 3, ,4, ,4, ,
par_groupby -N1 3 cssv [\s,]+ 3 ,,5 ,,4 ,,
par_groupby -N1 3 csv , ### test csv | --colsep , --groupby 3 -N1
par_groupby -N1 3 csv , NewRec
par_groupby -N1 3 csv , a1,b1,C1,
par_groupby -N1 3 csv , NewRec
par_groupby -N1 3 csv , 2,2,2,
par_groupby -N1 3 csv , 3,2,2,
par_groupby -N1 3 csv , 3,3,2,
par_groupby -N1 3 csv , NewRec
par_groupby -N1 3 csv , 3,2,4,
par_groupby -N1 3 csv , NewRec
par_groupby -N1 3 csv , 3,2,2,
par_groupby -N1 3 csv , NewRec
par_groupby -N1 3 csv , 3,2,3,
par_groupby -N1 3 csv , 3,1,3,
par_groupby -N1 3 csv , 3,2,3,
par_groupby -N1 3 csv , 3,3,3,
par_groupby -N1 3 csv , NewRec
par_groupby -N1 3 csv , 3,4,4,
par_groupby -N1 3 csv , 3,5,4,
par_groupby -N1 s/^(.).*/$1/ tsv \t ### test tsv | --colsep \t --groupby s/^(.).*/$1/ -N1
par_groupby -N1 s/^(.).*/$1/ tsv \t NewRec
par_groupby -N1 s/^(.).*/$1/ tsv \t a1 b1 C1
par_groupby -N1 s/^(.).*/$1/ tsv \t NewRec
par_groupby -N1 s/^(.).*/$1/ tsv \t 2 2 2
par_groupby -N1 s/^(.).*/$1/ tsv \t NewRec
par_groupby -N1 s/^(.).*/$1/ tsv \t 3 2 2
par_groupby -N1 s/^(.).*/$1/ tsv \t 3 3 2
par_groupby -N1 s/^(.).*/$1/ tsv \t 3 2 4
par_groupby -N1 s/^(.).*/$1/ tsv \t 3 2 2
par_groupby -N1 s/^(.).*/$1/ tsv \t 3 2 3
par_groupby -N1 s/^(.).*/$1/ tsv \t 3 1 3
par_groupby -N1 s/^(.).*/$1/ tsv \t 3 2 3
par_groupby -N1 s/^(.).*/$1/ tsv \t 3 3 3
par_groupby -N1 s/^(.).*/$1/ tsv \t 3 4 4
par_groupby -N1 s/^(.).*/$1/ tsv \t 3 5 4
par_groupby -N1 s/^(.).*/$1/ ssv \s+ ### test ssv | --colsep \s+ --groupby s/^(.).*/$1/ -N1
par_groupby -N1 s/^(.).*/$1/ ssv \s+ NewRec
par_groupby -N1 s/^(.).*/$1/ ssv \s+ a1 b1 C1
par_groupby -N1 s/^(.).*/$1/ ssv \s+ NewRec
par_groupby -N1 s/^(.).*/$1/ ssv \s+ 2 2 2
par_groupby -N1 s/^(.).*/$1/ ssv \s+ NewRec
par_groupby -N1 s/^(.).*/$1/ ssv \s+ 3 2 2
par_groupby -N1 s/^(.).*/$1/ ssv \s+ 3 3 2
par_groupby -N1 s/^(.).*/$1/ ssv \s+ 3 2 4
par_groupby -N1 s/^(.).*/$1/ ssv \s+ 3 2 2
par_groupby -N1 s/^(.).*/$1/ ssv \s+ 3 2 3
par_groupby -N1 s/^(.).*/$1/ ssv \s+ 3 1 3
par_groupby -N1 s/^(.).*/$1/ ssv \s+ 3 2 3
par_groupby -N1 s/^(.).*/$1/ ssv \s+ 3 3 3
par_groupby -N1 s/^(.).*/$1/ ssv \s+ 3 4 4
par_groupby -N1 s/^(.).*/$1/ ssv \s+ 3 5 4
par_groupby -N1 s/^(.).*/$1/ cssv [\s,]+ ### test cssv | --colsep [\s,]+ --groupby s/^(.).*/$1/ -N1
par_groupby -N1 s/^(.).*/$1/ cssv [\s,]+ NewRec
par_groupby -N1 s/^(.).*/$1/ cssv [\s,]+ a1, b1, C1,
par_groupby -N1 s/^(.).*/$1/ cssv [\s,]+ NewRec
par_groupby -N1 s/^(.).*/$1/ cssv [\s,]+ 2 ,2 ,2 ,
par_groupby -N1 s/^(.).*/$1/ cssv [\s,]+ NewRec
par_groupby -N1 s/^(.).*/$1/ cssv [\s,]+ 3 , 2 , 2 ,
par_groupby -N1 s/^(.).*/$1/ cssv [\s,]+ 3 , 3 , 2 ,
par_groupby -N1 s/^(.).*/$1/ cssv [\s,]+ 3,,2,,4,,
par_groupby -N1 s/^(.).*/$1/ cssv [\s,]+ 3 ,,, 2 ,,, 2 ,,,
par_groupby -N1 s/^(.).*/$1/ cssv [\s,]+ 3 2 3
par_groupby -N1 s/^(.).*/$1/ cssv [\s,]+ 3 , 1 , 3 ,
par_groupby -N1 s/^(.).*/$1/ cssv [\s,]+ 3 ,2 ,3 ,
par_groupby -N1 s/^(.).*/$1/ cssv [\s,]+ 3, 3, 3,
par_groupby -N1 s/^(.).*/$1/ cssv [\s,]+ 3, ,4, ,4, ,
par_groupby -N1 s/^(.).*/$1/ cssv [\s,]+ 3 ,,5 ,,4 ,,
par_groupby -N1 s/^(.).*/$1/ csv , ### test csv | --colsep , --groupby s/^(.).*/$1/ -N1
par_groupby -N1 s/^(.).*/$1/ csv , NewRec
par_groupby -N1 s/^(.).*/$1/ csv , a1,b1,C1,
par_groupby -N1 s/^(.).*/$1/ csv , NewRec
par_groupby -N1 s/^(.).*/$1/ csv , 2,2,2,
par_groupby -N1 s/^(.).*/$1/ csv , NewRec
par_groupby -N1 s/^(.).*/$1/ csv , 3,2,2,
par_groupby -N1 s/^(.).*/$1/ csv , 3,3,2,
par_groupby -N1 s/^(.).*/$1/ csv , 3,2,4,
par_groupby -N1 s/^(.).*/$1/ csv , 3,2,2,
par_groupby -N1 s/^(.).*/$1/ csv , 3,2,3,
par_groupby -N1 s/^(.).*/$1/ csv , 3,1,3,
par_groupby -N1 s/^(.).*/$1/ csv , 3,2,3,
par_groupby -N1 s/^(.).*/$1/ csv , 3,3,3,
par_groupby -N1 s/^(.).*/$1/ csv , 3,4,4,
par_groupby -N1 s/^(.).*/$1/ csv , 3,5,4,
par_groupby -N1 C1 tsv \t ### test tsv | --colsep \t --groupby C1 -N1
par_groupby -N1 C1 tsv \t NewRec
par_groupby -N1 C1 tsv \t a1 b1 C1
par_groupby -N1 C1 tsv \t 2 2 2
par_groupby -N1 C1 tsv \t 3 2 2
par_groupby -N1 C1 tsv \t 3 3 2
par_groupby -N1 C1 tsv \t NewRec
par_groupby -N1 C1 tsv \t a1 b1 C1
par_groupby -N1 C1 tsv \t 3 2 4
par_groupby -N1 C1 tsv \t NewRec
par_groupby -N1 C1 tsv \t a1 b1 C1
par_groupby -N1 C1 tsv \t 3 2 2
par_groupby -N1 C1 tsv \t NewRec
par_groupby -N1 C1 tsv \t a1 b1 C1
par_groupby -N1 C1 tsv \t 3 2 3
par_groupby -N1 C1 tsv \t 3 1 3
par_groupby -N1 C1 tsv \t 3 2 3
par_groupby -N1 C1 tsv \t 3 3 3
par_groupby -N1 C1 tsv \t NewRec
par_groupby -N1 C1 tsv \t a1 b1 C1
par_groupby -N1 C1 tsv \t 3 4 4
par_groupby -N1 C1 tsv \t 3 5 4
par_groupby -N1 C1 ssv \s+ ### test ssv | --colsep \s+ --groupby C1 -N1
par_groupby -N1 C1 ssv \s+ NewRec
par_groupby -N1 C1 ssv \s+ a1 b1 C1
par_groupby -N1 C1 ssv \s+ 2 2 2
par_groupby -N1 C1 ssv \s+ 3 2 2
par_groupby -N1 C1 ssv \s+ 3 3 2
par_groupby -N1 C1 ssv \s+ NewRec
par_groupby -N1 C1 ssv \s+ a1 b1 C1
par_groupby -N1 C1 ssv \s+ 3 2 4
par_groupby -N1 C1 ssv \s+ NewRec
par_groupby -N1 C1 ssv \s+ a1 b1 C1
par_groupby -N1 C1 ssv \s+ 3 2 2
par_groupby -N1 C1 ssv \s+ NewRec
par_groupby -N1 C1 ssv \s+ a1 b1 C1
par_groupby -N1 C1 ssv \s+ 3 2 3
par_groupby -N1 C1 ssv \s+ 3 1 3
par_groupby -N1 C1 ssv \s+ 3 2 3
par_groupby -N1 C1 ssv \s+ 3 3 3
par_groupby -N1 C1 ssv \s+ NewRec
par_groupby -N1 C1 ssv \s+ a1 b1 C1
par_groupby -N1 C1 ssv \s+ 3 4 4
par_groupby -N1 C1 ssv \s+ 3 5 4
par_groupby -N1 C1 cssv [\s,]+ ### test cssv | --colsep [\s,]+ --groupby C1 -N1
par_groupby -N1 C1 cssv [\s,]+ NewRec
par_groupby -N1 C1 cssv [\s,]+ a1, b1, C1,
par_groupby -N1 C1 cssv [\s,]+ 2 ,2 ,2 ,
par_groupby -N1 C1 cssv [\s,]+ 3 , 2 , 2 ,
par_groupby -N1 C1 cssv [\s,]+ 3 , 3 , 2 ,
par_groupby -N1 C1 cssv [\s,]+ NewRec
par_groupby -N1 C1 cssv [\s,]+ a1, b1, C1,
par_groupby -N1 C1 cssv [\s,]+ 3,,2,,4,,
par_groupby -N1 C1 cssv [\s,]+ NewRec
par_groupby -N1 C1 cssv [\s,]+ a1, b1, C1,
par_groupby -N1 C1 cssv [\s,]+ 3 ,,, 2 ,,, 2 ,,,
par_groupby -N1 C1 cssv [\s,]+ NewRec
par_groupby -N1 C1 cssv [\s,]+ a1, b1, C1,
par_groupby -N1 C1 cssv [\s,]+ 3 2 3
par_groupby -N1 C1 cssv [\s,]+ 3 , 1 , 3 ,
par_groupby -N1 C1 cssv [\s,]+ 3 ,2 ,3 ,
par_groupby -N1 C1 cssv [\s,]+ 3, 3, 3,
par_groupby -N1 C1 cssv [\s,]+ NewRec
par_groupby -N1 C1 cssv [\s,]+ a1, b1, C1,
par_groupby -N1 C1 cssv [\s,]+ 3, ,4, ,4, ,
par_groupby -N1 C1 cssv [\s,]+ 3 ,,5 ,,4 ,,
par_groupby -N1 C1 csv , ### test csv | --colsep , --groupby C1 -N1
par_groupby -N1 C1 csv , NewRec
par_groupby -N1 C1 csv , a1,b1,C1,
par_groupby -N1 C1 csv , 2,2,2,
par_groupby -N1 C1 csv , 3,2,2,
par_groupby -N1 C1 csv , 3,3,2,
par_groupby -N1 C1 csv , NewRec
par_groupby -N1 C1 csv , a1,b1,C1,
par_groupby -N1 C1 csv , 3,2,4,
par_groupby -N1 C1 csv , NewRec
par_groupby -N1 C1 csv , a1,b1,C1,
par_groupby -N1 C1 csv , 3,2,2,
par_groupby -N1 C1 csv , NewRec
par_groupby -N1 C1 csv , a1,b1,C1,
par_groupby -N1 C1 csv , 3,2,3,
par_groupby -N1 C1 csv , 3,1,3,
par_groupby -N1 C1 csv , 3,2,3,
par_groupby -N1 C1 csv , 3,3,3,
par_groupby -N1 C1 csv , NewRec
par_groupby -N1 C1 csv , a1,b1,C1,
par_groupby -N1 C1 csv , 3,4,4,
par_groupby -N1 C1 csv , 3,5,4,
par_groupby -N1 C1 $_%=2 tsv \t ### test tsv | --colsep \t --groupby C1 $_%=2 -N1
par_groupby -N1 C1 $_%=2 tsv \t NewRec
par_groupby -N1 C1 $_%=2 tsv \t a1 b1 C1
par_groupby -N1 C1 $_%=2 tsv \t 2 2 2
par_groupby -N1 C1 $_%=2 tsv \t 3 2 2
par_groupby -N1 C1 $_%=2 tsv \t 3 3 2
par_groupby -N1 C1 $_%=2 tsv \t 3 2 4
par_groupby -N1 C1 $_%=2 tsv \t 3 2 2
par_groupby -N1 C1 $_%=2 tsv \t NewRec
par_groupby -N1 C1 $_%=2 tsv \t a1 b1 C1
par_groupby -N1 C1 $_%=2 tsv \t 3 2 3
par_groupby -N1 C1 $_%=2 tsv \t 3 1 3
par_groupby -N1 C1 $_%=2 tsv \t 3 2 3
par_groupby -N1 C1 $_%=2 tsv \t 3 3 3
par_groupby -N1 C1 $_%=2 tsv \t NewRec
par_groupby -N1 C1 $_%=2 tsv \t a1 b1 C1
par_groupby -N1 C1 $_%=2 tsv \t 3 4 4
par_groupby -N1 C1 $_%=2 tsv \t 3 5 4
par_groupby -N1 C1 $_%=2 ssv \s+ ### test ssv | --colsep \s+ --groupby C1 $_%=2 -N1
par_groupby -N1 C1 $_%=2 ssv \s+ NewRec
par_groupby -N1 C1 $_%=2 ssv \s+ a1 b1 C1
par_groupby -N1 C1 $_%=2 ssv \s+ 2 2 2
par_groupby -N1 C1 $_%=2 ssv \s+ 3 2 2
par_groupby -N1 C1 $_%=2 ssv \s+ 3 3 2
par_groupby -N1 C1 $_%=2 ssv \s+ 3 2 4
par_groupby -N1 C1 $_%=2 ssv \s+ 3 2 2
par_groupby -N1 C1 $_%=2 ssv \s+ NewRec
par_groupby -N1 C1 $_%=2 ssv \s+ a1 b1 C1
par_groupby -N1 C1 $_%=2 ssv \s+ 3 2 3
par_groupby -N1 C1 $_%=2 ssv \s+ 3 1 3
par_groupby -N1 C1 $_%=2 ssv \s+ 3 2 3
par_groupby -N1 C1 $_%=2 ssv \s+ 3 3 3
par_groupby -N1 C1 $_%=2 ssv \s+ NewRec
par_groupby -N1 C1 $_%=2 ssv \s+ a1 b1 C1
par_groupby -N1 C1 $_%=2 ssv \s+ 3 4 4
par_groupby -N1 C1 $_%=2 ssv \s+ 3 5 4
par_groupby -N1 C1 $_%=2 cssv [\s,]+ ### test cssv | --colsep [\s,]+ --groupby C1 $_%=2 -N1
par_groupby -N1 C1 $_%=2 cssv [\s,]+ NewRec
par_groupby -N1 C1 $_%=2 cssv [\s,]+ a1, b1, C1,
par_groupby -N1 C1 $_%=2 cssv [\s,]+ 2 ,2 ,2 ,
par_groupby -N1 C1 $_%=2 cssv [\s,]+ 3 , 2 , 2 ,
par_groupby -N1 C1 $_%=2 cssv [\s,]+ 3 , 3 , 2 ,
par_groupby -N1 C1 $_%=2 cssv [\s,]+ 3,,2,,4,,
par_groupby -N1 C1 $_%=2 cssv [\s,]+ 3 ,,, 2 ,,, 2 ,,,
par_groupby -N1 C1 $_%=2 cssv [\s,]+ NewRec
par_groupby -N1 C1 $_%=2 cssv [\s,]+ a1, b1, C1,
par_groupby -N1 C1 $_%=2 cssv [\s,]+ 3 2 3
par_groupby -N1 C1 $_%=2 cssv [\s,]+ 3 , 1 , 3 ,
par_groupby -N1 C1 $_%=2 cssv [\s,]+ 3 ,2 ,3 ,
par_groupby -N1 C1 $_%=2 cssv [\s,]+ 3, 3, 3,
par_groupby -N1 C1 $_%=2 cssv [\s,]+ NewRec
par_groupby -N1 C1 $_%=2 cssv [\s,]+ a1, b1, C1,
par_groupby -N1 C1 $_%=2 cssv [\s,]+ 3, ,4, ,4, ,
par_groupby -N1 C1 $_%=2 cssv [\s,]+ 3 ,,5 ,,4 ,,
par_groupby -N1 C1 $_%=2 csv , ### test csv | --colsep , --groupby C1 $_%=2 -N1
par_groupby -N1 C1 $_%=2 csv , NewRec
par_groupby -N1 C1 $_%=2 csv , a1,b1,C1,
par_groupby -N1 C1 $_%=2 csv , 2,2,2,
par_groupby -N1 C1 $_%=2 csv , 3,2,2,
par_groupby -N1 C1 $_%=2 csv , 3,3,2,
par_groupby -N1 C1 $_%=2 csv , 3,2,4,
par_groupby -N1 C1 $_%=2 csv , 3,2,2,
par_groupby -N1 C1 $_%=2 csv , NewRec
par_groupby -N1 C1 $_%=2 csv , a1,b1,C1,
par_groupby -N1 C1 $_%=2 csv , 3,2,3,
par_groupby -N1 C1 $_%=2 csv , 3,1,3,
par_groupby -N1 C1 $_%=2 csv , 3,2,3,
par_groupby -N1 C1 $_%=2 csv , 3,3,3,
par_groupby -N1 C1 $_%=2 csv , NewRec
par_groupby -N1 C1 $_%=2 csv , a1,b1,C1,
par_groupby -N1 C1 $_%=2 csv , 3,4,4,
par_groupby -N1 C1 $_%=2 csv , 3,5,4,
par_groupby --block 20 3 $_%=2 tsv \t ### test tsv | --colsep \t --groupby 3 $_%=2 --block 20
par_groupby --block 20 3 $_%=2 tsv \t NewRec
par_groupby --block 20 3 $_%=2 tsv \t a1 b1 C1
par_groupby --block 20 3 $_%=2 tsv \t 2 2 2
par_groupby --block 20 3 $_%=2 tsv \t 3 2 2
par_groupby --block 20 3 $_%=2 tsv \t 3 3 2
par_groupby --block 20 3 $_%=2 tsv \t 3 2 4
par_groupby --block 20 3 $_%=2 tsv \t 3 2 2
par_groupby --block 20 3 $_%=2 tsv \t NewRec
par_groupby --block 20 3 $_%=2 tsv \t 3 2 3
par_groupby --block 20 3 $_%=2 tsv \t 3 1 3
par_groupby --block 20 3 $_%=2 tsv \t 3 2 3
par_groupby --block 20 3 $_%=2 tsv \t 3 3 3
par_groupby --block 20 3 $_%=2 tsv \t 3 4 4
par_groupby --block 20 3 $_%=2 tsv \t 3 5 4
par_groupby --block 20 3 $_%=2 tsv \t parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 3 $_%=2 tsv \t parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 3 $_%=2 tsv \t parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 3 $_%=2 tsv \t parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 3 $_%=2 tsv \t parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 3 $_%=2 ssv \s+ ### test ssv | --colsep \s+ --groupby 3 $_%=2 --block 20
par_groupby --block 20 3 $_%=2 ssv \s+ NewRec
par_groupby --block 20 3 $_%=2 ssv \s+ a1 b1 C1
par_groupby --block 20 3 $_%=2 ssv \s+ 2 2 2
par_groupby --block 20 3 $_%=2 ssv \s+ 3 2 2
par_groupby --block 20 3 $_%=2 ssv \s+ 3 3 2
par_groupby --block 20 3 $_%=2 ssv \s+ 3 2 4
par_groupby --block 20 3 $_%=2 ssv \s+ 3 2 2
par_groupby --block 20 3 $_%=2 ssv \s+ NewRec
par_groupby --block 20 3 $_%=2 ssv \s+ 3 2 3
par_groupby --block 20 3 $_%=2 ssv \s+ 3 1 3
par_groupby --block 20 3 $_%=2 ssv \s+ 3 2 3
par_groupby --block 20 3 $_%=2 ssv \s+ 3 3 3
par_groupby --block 20 3 $_%=2 ssv \s+ NewRec
par_groupby --block 20 3 $_%=2 ssv \s+ 3 4 4
par_groupby --block 20 3 $_%=2 ssv \s+ 3 5 4
par_groupby --block 20 3 $_%=2 ssv \s+ parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 3 $_%=2 ssv \s+ parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 3 $_%=2 ssv \s+ parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 3 $_%=2 ssv \s+ parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 3 $_%=2 ssv \s+ parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 3 $_%=2 ssv \s+ parallel: Warning: A record was longer than 87. Increasing to --blocksize 115.
par_groupby --block 20 3 $_%=2 cssv [\s,]+ ### test cssv | --colsep [\s,]+ --groupby 3 $_%=2 --block 20
par_groupby --block 20 3 $_%=2 cssv [\s,]+ NewRec
par_groupby --block 20 3 $_%=2 cssv [\s,]+ a1, b1, C1,
par_groupby --block 20 3 $_%=2 cssv [\s,]+ 2 ,2 ,2 ,
par_groupby --block 20 3 $_%=2 cssv [\s,]+ 3 , 2 , 2 ,
par_groupby --block 20 3 $_%=2 cssv [\s,]+ 3 , 3 , 2 ,
par_groupby --block 20 3 $_%=2 cssv [\s,]+ 3,,2,,4,,
par_groupby --block 20 3 $_%=2 cssv [\s,]+ 3 ,,, 2 ,,, 2 ,,,
par_groupby --block 20 3 $_%=2 cssv [\s,]+ NewRec
par_groupby --block 20 3 $_%=2 cssv [\s,]+ 3 2 3
par_groupby --block 20 3 $_%=2 cssv [\s,]+ 3 , 1 , 3 ,
par_groupby --block 20 3 $_%=2 cssv [\s,]+ 3 ,2 ,3 ,
par_groupby --block 20 3 $_%=2 cssv [\s,]+ 3, 3, 3,
par_groupby --block 20 3 $_%=2 cssv [\s,]+ 3, ,4, ,4, ,
par_groupby --block 20 3 $_%=2 cssv [\s,]+ 3 ,,5 ,,4 ,,
par_groupby --block 20 3 $_%=2 cssv [\s,]+ parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 3 $_%=2 cssv [\s,]+ parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 3 $_%=2 cssv [\s,]+ parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 3 $_%=2 cssv [\s,]+ parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 3 $_%=2 cssv [\s,]+ parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 3 $_%=2 cssv [\s,]+ parallel: Warning: A record was longer than 87. Increasing to --blocksize 115.
par_groupby --block 20 3 $_%=2 cssv [\s,]+ parallel: Warning: A record was longer than 115. Increasing to --blocksize 151.
par_groupby --block 20 3 $_%=2 csv , ### test csv | --colsep , --groupby 3 $_%=2 --block 20
par_groupby --block 20 3 $_%=2 csv , NewRec
par_groupby --block 20 3 $_%=2 csv , a1,b1,C1,
par_groupby --block 20 3 $_%=2 csv , 2,2,2,
par_groupby --block 20 3 $_%=2 csv , 3,2,2,
par_groupby --block 20 3 $_%=2 csv , 3,3,2,
par_groupby --block 20 3 $_%=2 csv , 3,2,4,
par_groupby --block 20 3 $_%=2 csv , 3,2,2,
par_groupby --block 20 3 $_%=2 csv , NewRec
par_groupby --block 20 3 $_%=2 csv , 3,2,3,
par_groupby --block 20 3 $_%=2 csv , 3,1,3,
par_groupby --block 20 3 $_%=2 csv , 3,2,3,
par_groupby --block 20 3 $_%=2 csv , 3,3,3,
par_groupby --block 20 3 $_%=2 csv , 3,4,4,
par_groupby --block 20 3 $_%=2 csv , 3,5,4,
par_groupby --block 20 3 $_%=2 csv , parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 3 $_%=2 csv , parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 3 $_%=2 csv , parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 3 $_%=2 csv , parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 3 $_%=2 csv , parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 3 tsv \t ### test tsv | --colsep \t --groupby 3 --block 20
par_groupby --block 20 3 tsv \t NewRec
par_groupby --block 20 3 tsv \t a1 b1 C1
par_groupby --block 20 3 tsv \t NewRec
par_groupby --block 20 3 tsv \t 2 2 2
par_groupby --block 20 3 tsv \t 3 2 2
par_groupby --block 20 3 tsv \t 3 3 2
par_groupby --block 20 3 tsv \t NewRec
par_groupby --block 20 3 tsv \t 3 2 4
par_groupby --block 20 3 tsv \t NewRec
par_groupby --block 20 3 tsv \t 3 2 2
par_groupby --block 20 3 tsv \t NewRec
par_groupby --block 20 3 tsv \t 3 2 3
par_groupby --block 20 3 tsv \t 3 1 3
par_groupby --block 20 3 tsv \t 3 2 3
par_groupby --block 20 3 tsv \t 3 3 3
par_groupby --block 20 3 tsv \t 3 4 4
par_groupby --block 20 3 tsv \t 3 5 4
par_groupby --block 20 3 tsv \t parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 3 tsv \t parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 3 tsv \t parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 3 tsv \t parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 3 tsv \t parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 3 ssv \s+ ### test ssv | --colsep \s+ --groupby 3 --block 20
par_groupby --block 20 3 ssv \s+ NewRec
par_groupby --block 20 3 ssv \s+ a1 b1 C1
par_groupby --block 20 3 ssv \s+ NewRec
par_groupby --block 20 3 ssv \s+ 2 2 2
par_groupby --block 20 3 ssv \s+ 3 2 2
par_groupby --block 20 3 ssv \s+ 3 3 2
par_groupby --block 20 3 ssv \s+ NewRec
par_groupby --block 20 3 ssv \s+ 3 2 4
par_groupby --block 20 3 ssv \s+ 3 2 2
par_groupby --block 20 3 ssv \s+ NewRec
par_groupby --block 20 3 ssv \s+ 3 2 3
par_groupby --block 20 3 ssv \s+ 3 1 3
par_groupby --block 20 3 ssv \s+ 3 2 3
par_groupby --block 20 3 ssv \s+ 3 3 3
par_groupby --block 20 3 ssv \s+ NewRec
par_groupby --block 20 3 ssv \s+ 3 4 4
par_groupby --block 20 3 ssv \s+ 3 5 4
par_groupby --block 20 3 ssv \s+ parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 3 ssv \s+ parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 3 ssv \s+ parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 3 ssv \s+ parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 3 ssv \s+ parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 3 ssv \s+ parallel: Warning: A record was longer than 87. Increasing to --blocksize 115.
par_groupby --block 20 3 cssv [\s,]+ ### test cssv | --colsep [\s,]+ --groupby 3 --block 20
par_groupby --block 20 3 cssv [\s,]+ NewRec
par_groupby --block 20 3 cssv [\s,]+ a1, b1, C1,
par_groupby --block 20 3 cssv [\s,]+ NewRec
par_groupby --block 20 3 cssv [\s,]+ 2 ,2 ,2 ,
par_groupby --block 20 3 cssv [\s,]+ 3 , 2 , 2 ,
par_groupby --block 20 3 cssv [\s,]+ 3 , 3 , 2 ,
par_groupby --block 20 3 cssv [\s,]+ NewRec
par_groupby --block 20 3 cssv [\s,]+ 3,,2,,4,,
par_groupby --block 20 3 cssv [\s,]+ NewRec
par_groupby --block 20 3 cssv [\s,]+ 3 ,,, 2 ,,, 2 ,,,
par_groupby --block 20 3 cssv [\s,]+ NewRec
par_groupby --block 20 3 cssv [\s,]+ 3 2 3
par_groupby --block 20 3 cssv [\s,]+ 3 , 1 , 3 ,
par_groupby --block 20 3 cssv [\s,]+ 3 ,2 ,3 ,
par_groupby --block 20 3 cssv [\s,]+ 3, 3, 3,
par_groupby --block 20 3 cssv [\s,]+ NewRec
par_groupby --block 20 3 cssv [\s,]+ 3, ,4, ,4, ,
par_groupby --block 20 3 cssv [\s,]+ 3 ,,5 ,,4 ,,
par_groupby --block 20 3 cssv [\s,]+ parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 3 cssv [\s,]+ parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 3 cssv [\s,]+ parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 3 cssv [\s,]+ parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 3 cssv [\s,]+ parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 3 csv , ### test csv | --colsep , --groupby 3 --block 20
par_groupby --block 20 3 csv , NewRec
par_groupby --block 20 3 csv , a1,b1,C1,
par_groupby --block 20 3 csv , NewRec
par_groupby --block 20 3 csv , 2,2,2,
par_groupby --block 20 3 csv , 3,2,2,
par_groupby --block 20 3 csv , 3,3,2,
par_groupby --block 20 3 csv , NewRec
par_groupby --block 20 3 csv , 3,2,4,
par_groupby --block 20 3 csv , NewRec
par_groupby --block 20 3 csv , 3,2,2,
par_groupby --block 20 3 csv , NewRec
par_groupby --block 20 3 csv , 3,2,3,
par_groupby --block 20 3 csv , 3,1,3,
par_groupby --block 20 3 csv , 3,2,3,
par_groupby --block 20 3 csv , 3,3,3,
par_groupby --block 20 3 csv , 3,4,4,
par_groupby --block 20 3 csv , 3,5,4,
par_groupby --block 20 3 csv , parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 3 csv , parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 3 csv , parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 3 csv , parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 3 csv , parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 s/^(.).*/$1/ tsv \t ### test tsv | --colsep \t --groupby s/^(.).*/$1/ --block 20
par_groupby --block 20 s/^(.).*/$1/ tsv \t NewRec
par_groupby --block 20 s/^(.).*/$1/ tsv \t a1 b1 C1
par_groupby --block 20 s/^(.).*/$1/ tsv \t NewRec
par_groupby --block 20 s/^(.).*/$1/ tsv \t 2 2 2
par_groupby --block 20 s/^(.).*/$1/ tsv \t NewRec
par_groupby --block 20 s/^(.).*/$1/ tsv \t 3 2 2
par_groupby --block 20 s/^(.).*/$1/ tsv \t 3 3 2
par_groupby --block 20 s/^(.).*/$1/ tsv \t 3 2 4
par_groupby --block 20 s/^(.).*/$1/ tsv \t 3 2 2
par_groupby --block 20 s/^(.).*/$1/ tsv \t 3 2 3
par_groupby --block 20 s/^(.).*/$1/ tsv \t 3 1 3
par_groupby --block 20 s/^(.).*/$1/ tsv \t 3 2 3
par_groupby --block 20 s/^(.).*/$1/ tsv \t 3 3 3
par_groupby --block 20 s/^(.).*/$1/ tsv \t 3 4 4
par_groupby --block 20 s/^(.).*/$1/ tsv \t 3 5 4
par_groupby --block 20 s/^(.).*/$1/ tsv \t parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 s/^(.).*/$1/ tsv \t parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 s/^(.).*/$1/ tsv \t parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 s/^(.).*/$1/ tsv \t parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 s/^(.).*/$1/ tsv \t parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 s/^(.).*/$1/ tsv \t parallel: Warning: A record was longer than 87. Increasing to --blocksize 115.
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ ### test ssv | --colsep \s+ --groupby s/^(.).*/$1/ --block 20
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ NewRec
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ a1 b1 C1
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ NewRec
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ 2 2 2
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ NewRec
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ 3 2 2
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ 3 3 2
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ 3 2 4
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ 3 2 2
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ 3 2 3
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ 3 1 3
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ 3 2 3
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ 3 3 3
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ 3 4 4
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ 3 5 4
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ parallel: Warning: A record was longer than 87. Increasing to --blocksize 115.
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ parallel: Warning: A record was longer than 115. Increasing to --blocksize 151.
par_groupby --block 20 s/^(.).*/$1/ ssv \s+ parallel: Warning: A record was longer than 151. Increasing to --blocksize 198.
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ ### test cssv | --colsep [\s,]+ --groupby s/^(.).*/$1/ --block 20
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ NewRec
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ a1, b1, C1,
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ NewRec
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ 2 ,2 ,2 ,
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ NewRec
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ 3 , 2 , 2 ,
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ 3 , 3 , 2 ,
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ 3,,2,,4,,
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ 3 ,,, 2 ,,, 2 ,,,
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ 3 2 3
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ 3 , 1 , 3 ,
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ 3 ,2 ,3 ,
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ 3, 3, 3,
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ 3, ,4, ,4, ,
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ 3 ,,5 ,,4 ,,
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ parallel: Warning: A record was longer than 87. Increasing to --blocksize 115.
par_groupby --block 20 s/^(.).*/$1/ cssv [\s,]+ parallel: Warning: A record was longer than 115. Increasing to --blocksize 151.
par_groupby --block 20 s/^(.).*/$1/ csv , ### test csv | --colsep , --groupby s/^(.).*/$1/ --block 20
par_groupby --block 20 s/^(.).*/$1/ csv , NewRec
par_groupby --block 20 s/^(.).*/$1/ csv , a1,b1,C1,
par_groupby --block 20 s/^(.).*/$1/ csv , NewRec
par_groupby --block 20 s/^(.).*/$1/ csv , 2,2,2,
par_groupby --block 20 s/^(.).*/$1/ csv , NewRec
par_groupby --block 20 s/^(.).*/$1/ csv , 3,2,2,
par_groupby --block 20 s/^(.).*/$1/ csv , 3,3,2,
par_groupby --block 20 s/^(.).*/$1/ csv , 3,2,4,
par_groupby --block 20 s/^(.).*/$1/ csv , 3,2,2,
par_groupby --block 20 s/^(.).*/$1/ csv , 3,2,3,
par_groupby --block 20 s/^(.).*/$1/ csv , 3,1,3,
par_groupby --block 20 s/^(.).*/$1/ csv , 3,2,3,
par_groupby --block 20 s/^(.).*/$1/ csv , 3,3,3,
par_groupby --block 20 s/^(.).*/$1/ csv , 3,4,4,
par_groupby --block 20 s/^(.).*/$1/ csv , 3,5,4,
par_groupby --block 20 s/^(.).*/$1/ csv , parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 s/^(.).*/$1/ csv , parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 s/^(.).*/$1/ csv , parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 s/^(.).*/$1/ csv , parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 s/^(.).*/$1/ csv , parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 s/^(.).*/$1/ csv , parallel: Warning: A record was longer than 87. Increasing to --blocksize 115.
par_groupby --block 20 C1 tsv \t ### test tsv | --colsep \t --groupby C1 --block 20
par_groupby --block 20 C1 tsv \t NewRec
par_groupby --block 20 C1 tsv \t a1 b1 C1
par_groupby --block 20 C1 tsv \t 2 2 2
par_groupby --block 20 C1 tsv \t 3 2 2
par_groupby --block 20 C1 tsv \t 3 3 2
par_groupby --block 20 C1 tsv \t NewRec
par_groupby --block 20 C1 tsv \t a1 b1 C1
par_groupby --block 20 C1 tsv \t 3 2 4
par_groupby --block 20 C1 tsv \t NewRec
par_groupby --block 20 C1 tsv \t a1 b1 C1
par_groupby --block 20 C1 tsv \t 3 2 2
par_groupby --block 20 C1 tsv \t NewRec
par_groupby --block 20 C1 tsv \t a1 b1 C1
par_groupby --block 20 C1 tsv \t 3 2 3
par_groupby --block 20 C1 tsv \t 3 1 3
par_groupby --block 20 C1 tsv \t 3 2 3
par_groupby --block 20 C1 tsv \t 3 3 3
par_groupby --block 20 C1 tsv \t 3 4 4
par_groupby --block 20 C1 tsv \t 3 5 4
par_groupby --block 20 C1 tsv \t parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 C1 tsv \t parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 C1 tsv \t parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 C1 tsv \t parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 C1 tsv \t parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 C1 ssv \s+ ### test ssv | --colsep \s+ --groupby C1 --block 20
par_groupby --block 20 C1 ssv \s+ NewRec
par_groupby --block 20 C1 ssv \s+ a1 b1 C1
par_groupby --block 20 C1 ssv \s+ 2 2 2
par_groupby --block 20 C1 ssv \s+ 3 2 2
par_groupby --block 20 C1 ssv \s+ 3 3 2
par_groupby --block 20 C1 ssv \s+ NewRec
par_groupby --block 20 C1 ssv \s+ a1 b1 C1
par_groupby --block 20 C1 ssv \s+ 3 2 4
par_groupby --block 20 C1 ssv \s+ 3 2 2
par_groupby --block 20 C1 ssv \s+ NewRec
par_groupby --block 20 C1 ssv \s+ a1 b1 C1
par_groupby --block 20 C1 ssv \s+ 3 2 3
par_groupby --block 20 C1 ssv \s+ 3 1 3
par_groupby --block 20 C1 ssv \s+ 3 2 3
par_groupby --block 20 C1 ssv \s+ 3 3 3
par_groupby --block 20 C1 ssv \s+ NewRec
par_groupby --block 20 C1 ssv \s+ a1 b1 C1
par_groupby --block 20 C1 ssv \s+ 3 4 4
par_groupby --block 20 C1 ssv \s+ 3 5 4
par_groupby --block 20 C1 ssv \s+ parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 C1 ssv \s+ parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 C1 ssv \s+ parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 C1 ssv \s+ parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 C1 ssv \s+ parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 C1 ssv \s+ parallel: Warning: A record was longer than 87. Increasing to --blocksize 115.
par_groupby --block 20 C1 cssv [\s,]+ ### test cssv | --colsep [\s,]+ --groupby C1 --block 20
par_groupby --block 20 C1 cssv [\s,]+ NewRec
par_groupby --block 20 C1 cssv [\s,]+ a1, b1, C1,
par_groupby --block 20 C1 cssv [\s,]+ 2 ,2 ,2 ,
par_groupby --block 20 C1 cssv [\s,]+ 3 , 2 , 2 ,
par_groupby --block 20 C1 cssv [\s,]+ 3 , 3 , 2 ,
par_groupby --block 20 C1 cssv [\s,]+ NewRec
par_groupby --block 20 C1 cssv [\s,]+ a1, b1, C1,
par_groupby --block 20 C1 cssv [\s,]+ 3,,2,,4,,
par_groupby --block 20 C1 cssv [\s,]+ NewRec
par_groupby --block 20 C1 cssv [\s,]+ a1, b1, C1,
par_groupby --block 20 C1 cssv [\s,]+ 3 ,,, 2 ,,, 2 ,,,
par_groupby --block 20 C1 cssv [\s,]+ NewRec
par_groupby --block 20 C1 cssv [\s,]+ a1, b1, C1,
par_groupby --block 20 C1 cssv [\s,]+ 3 2 3
par_groupby --block 20 C1 cssv [\s,]+ 3 , 1 , 3 ,
par_groupby --block 20 C1 cssv [\s,]+ 3 ,2 ,3 ,
par_groupby --block 20 C1 cssv [\s,]+ 3, 3, 3,
par_groupby --block 20 C1 cssv [\s,]+ NewRec
par_groupby --block 20 C1 cssv [\s,]+ a1, b1, C1,
par_groupby --block 20 C1 cssv [\s,]+ 3, ,4, ,4, ,
par_groupby --block 20 C1 cssv [\s,]+ 3 ,,5 ,,4 ,,
par_groupby --block 20 C1 cssv [\s,]+ parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 C1 cssv [\s,]+ parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 C1 cssv [\s,]+ parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 C1 cssv [\s,]+ parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 C1 cssv [\s,]+ parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 C1 csv , ### test csv | --colsep , --groupby C1 --block 20
par_groupby --block 20 C1 csv , NewRec
par_groupby --block 20 C1 csv , a1,b1,C1,
par_groupby --block 20 C1 csv , 2,2,2,
par_groupby --block 20 C1 csv , 3,2,2,
par_groupby --block 20 C1 csv , 3,3,2,
par_groupby --block 20 C1 csv , NewRec
par_groupby --block 20 C1 csv , a1,b1,C1,
par_groupby --block 20 C1 csv , 3,2,4,
par_groupby --block 20 C1 csv , NewRec
par_groupby --block 20 C1 csv , a1,b1,C1,
par_groupby --block 20 C1 csv , 3,2,2,
par_groupby --block 20 C1 csv , NewRec
par_groupby --block 20 C1 csv , a1,b1,C1,
par_groupby --block 20 C1 csv , 3,2,3,
par_groupby --block 20 C1 csv , 3,1,3,
par_groupby --block 20 C1 csv , 3,2,3,
par_groupby --block 20 C1 csv , 3,3,3,
par_groupby --block 20 C1 csv , 3,4,4,
par_groupby --block 20 C1 csv , 3,5,4,
par_groupby --block 20 C1 csv , parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 C1 csv , parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 C1 csv , parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 C1 csv , parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 C1 csv , parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 C1 $_%=2 tsv \t ### test tsv | --colsep \t --groupby C1 $_%=2 --block 20
par_groupby --block 20 C1 $_%=2 tsv \t NewRec
par_groupby --block 20 C1 $_%=2 tsv \t a1 b1 C1
par_groupby --block 20 C1 $_%=2 tsv \t 2 2 2
par_groupby --block 20 C1 $_%=2 tsv \t 3 2 2
par_groupby --block 20 C1 $_%=2 tsv \t 3 3 2
par_groupby --block 20 C1 $_%=2 tsv \t 3 2 4
par_groupby --block 20 C1 $_%=2 tsv \t 3 2 2
par_groupby --block 20 C1 $_%=2 tsv \t NewRec
par_groupby --block 20 C1 $_%=2 tsv \t a1 b1 C1
par_groupby --block 20 C1 $_%=2 tsv \t 3 2 3
par_groupby --block 20 C1 $_%=2 tsv \t 3 1 3
par_groupby --block 20 C1 $_%=2 tsv \t 3 2 3
par_groupby --block 20 C1 $_%=2 tsv \t 3 3 3
par_groupby --block 20 C1 $_%=2 tsv \t 3 4 4
par_groupby --block 20 C1 $_%=2 tsv \t 3 5 4
par_groupby --block 20 C1 $_%=2 tsv \t parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 C1 $_%=2 tsv \t parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 C1 $_%=2 tsv \t parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 C1 $_%=2 tsv \t parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 C1 $_%=2 tsv \t parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 C1 $_%=2 ssv \s+ ### test ssv | --colsep \s+ --groupby C1 $_%=2 --block 20
par_groupby --block 20 C1 $_%=2 ssv \s+ NewRec
par_groupby --block 20 C1 $_%=2 ssv \s+ a1 b1 C1
par_groupby --block 20 C1 $_%=2 ssv \s+ 2 2 2
par_groupby --block 20 C1 $_%=2 ssv \s+ 3 2 2
par_groupby --block 20 C1 $_%=2 ssv \s+ 3 3 2
par_groupby --block 20 C1 $_%=2 ssv \s+ 3 2 4
par_groupby --block 20 C1 $_%=2 ssv \s+ 3 2 2
par_groupby --block 20 C1 $_%=2 ssv \s+ NewRec
par_groupby --block 20 C1 $_%=2 ssv \s+ a1 b1 C1
par_groupby --block 20 C1 $_%=2 ssv \s+ 3 2 3
par_groupby --block 20 C1 $_%=2 ssv \s+ 3 1 3
par_groupby --block 20 C1 $_%=2 ssv \s+ 3 2 3
par_groupby --block 20 C1 $_%=2 ssv \s+ 3 3 3
par_groupby --block 20 C1 $_%=2 ssv \s+ NewRec
par_groupby --block 20 C1 $_%=2 ssv \s+ a1 b1 C1
par_groupby --block 20 C1 $_%=2 ssv \s+ 3 4 4
par_groupby --block 20 C1 $_%=2 ssv \s+ 3 5 4
par_groupby --block 20 C1 $_%=2 ssv \s+ parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 C1 $_%=2 ssv \s+ parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 C1 $_%=2 ssv \s+ parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 C1 $_%=2 ssv \s+ parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 C1 $_%=2 ssv \s+ parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 C1 $_%=2 ssv \s+ parallel: Warning: A record was longer than 87. Increasing to --blocksize 115.
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ ### test cssv | --colsep [\s,]+ --groupby C1 $_%=2 --block 20
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ NewRec
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ a1, b1, C1,
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ 2 ,2 ,2 ,
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ 3 , 2 , 2 ,
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ 3 , 3 , 2 ,
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ 3,,2,,4,,
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ 3 ,,, 2 ,,, 2 ,,,
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ NewRec
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ a1, b1, C1,
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ 3 2 3
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ 3 , 1 , 3 ,
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ 3 ,2 ,3 ,
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ 3, 3, 3,
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ 3, ,4, ,4, ,
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ 3 ,,5 ,,4 ,,
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby --block 20 C1 $_%=2 cssv [\s,]+ parallel: Warning: A record was longer than 87. Increasing to --blocksize 115.
par_groupby --block 20 C1 $_%=2 csv , ### test csv | --colsep , --groupby C1 $_%=2 --block 20
par_groupby --block 20 C1 $_%=2 csv , NewRec
par_groupby --block 20 C1 $_%=2 csv , a1,b1,C1,
par_groupby --block 20 C1 $_%=2 csv , 2,2,2,
par_groupby --block 20 C1 $_%=2 csv , 3,2,2,
par_groupby --block 20 C1 $_%=2 csv , 3,3,2,
par_groupby --block 20 C1 $_%=2 csv , 3,2,4,
par_groupby --block 20 C1 $_%=2 csv , 3,2,2,
par_groupby --block 20 C1 $_%=2 csv , NewRec
par_groupby --block 20 C1 $_%=2 csv , a1,b1,C1,
par_groupby --block 20 C1 $_%=2 csv , 3,2,3,
par_groupby --block 20 C1 $_%=2 csv , 3,1,3,
par_groupby --block 20 C1 $_%=2 csv , 3,2,3,
par_groupby --block 20 C1 $_%=2 csv , 3,3,3,
par_groupby --block 20 C1 $_%=2 csv , 3,4,4,
par_groupby --block 20 C1 $_%=2 csv , 3,5,4,
par_groupby --block 20 C1 $_%=2 csv , parallel: Warning: A record was longer than 20. Increasing to --blocksize 27.
par_groupby --block 20 C1 $_%=2 csv , parallel: Warning: A record was longer than 27. Increasing to --blocksize 37.
par_groupby --block 20 C1 $_%=2 csv , parallel: Warning: A record was longer than 37. Increasing to --blocksize 50.
par_groupby --block 20 C1 $_%=2 csv , parallel: Warning: A record was longer than 50. Increasing to --blocksize 66.
par_groupby --block 20 C1 $_%=2 csv , parallel: Warning: A record was longer than 66. Increasing to --blocksize 87.
par_groupby_pipepart tsv \t 3 $_%=2 ### test tsv | --colsep \t --groupby 3 $_%=2
par_groupby_pipepart tsv \t 3 $_%=2 NewRec
par_groupby_pipepart tsv \t 3 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t 3 $_%=2 NewRec
par_groupby_pipepart tsv \t 3 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t 3 $_%=2 NewRec
par_groupby_pipepart tsv \t 3 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t 3 $_%=2 NewRec
par_groupby_pipepart tsv \t 3 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t 3 $_%=2 NewRec
par_groupby_pipepart tsv \t 3 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t 3 $_%=2 NewRec
par_groupby_pipepart tsv \t 3 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t 3 $_%=2 NewRec
par_groupby_pipepart tsv \t 3 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t 3 $_%=2 NewRec
par_groupby_pipepart tsv \t 3 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t 3 $_%=2 NewRec
par_groupby_pipepart tsv \t 3 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t 3 $_%=2 NewRec
par_groupby_pipepart tsv \t 3 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t 3 ### test tsv | --colsep \t --groupby 3
par_groupby_pipepart tsv \t 3 NewRec
par_groupby_pipepart tsv \t 3 90001 540006 1170031
par_groupby_pipepart tsv \t 3 NewRec
par_groupby_pipepart tsv \t 3 90001 540006 1170031
par_groupby_pipepart tsv \t 3 NewRec
par_groupby_pipepart tsv \t 3 90001 540006 1170031
par_groupby_pipepart tsv \t 3 NewRec
par_groupby_pipepart tsv \t 3 90001 540006 1170031
par_groupby_pipepart tsv \t 3 NewRec
par_groupby_pipepart tsv \t 3 90001 540006 1170031
par_groupby_pipepart tsv \t 3 NewRec
par_groupby_pipepart tsv \t 3 90001 540006 1170031
par_groupby_pipepart tsv \t 3 NewRec
par_groupby_pipepart tsv \t 3 90001 540006 1170031
par_groupby_pipepart tsv \t 3 NewRec
par_groupby_pipepart tsv \t 3 90001 540006 1170031
par_groupby_pipepart tsv \t 3 NewRec
par_groupby_pipepart tsv \t 3 90001 540006 1170031
par_groupby_pipepart tsv \t 3 NewRec
par_groupby_pipepart tsv \t 3 90001 540006 1170031
par_groupby_pipepart tsv \t c1 ### test tsv | --colsep \t --groupby c1
par_groupby_pipepart tsv \t c1 NewRec
par_groupby_pipepart tsv \t c1 90001 540006 1170031
par_groupby_pipepart tsv \t c1 NewRec
par_groupby_pipepart tsv \t c1 90001 540006 1170031
par_groupby_pipepart tsv \t c1 NewRec
par_groupby_pipepart tsv \t c1 90001 540006 1170031
par_groupby_pipepart tsv \t c1 NewRec
par_groupby_pipepart tsv \t c1 90001 540006 1170031
par_groupby_pipepart tsv \t c1 NewRec
par_groupby_pipepart tsv \t c1 90001 540006 1170031
par_groupby_pipepart tsv \t c1 NewRec
par_groupby_pipepart tsv \t c1 90001 540006 1170031
par_groupby_pipepart tsv \t c1 NewRec
par_groupby_pipepart tsv \t c1 90001 540006 1170031
par_groupby_pipepart tsv \t c1 NewRec
par_groupby_pipepart tsv \t c1 90001 540006 1170031
par_groupby_pipepart tsv \t c1 NewRec
par_groupby_pipepart tsv \t c1 90001 540006 1170031
par_groupby_pipepart tsv \t c1 NewRec
par_groupby_pipepart tsv \t c1 90001 540006 1170031
par_groupby_pipepart tsv \t c1 $_%=2 ### test tsv | --colsep \t --groupby c1 $_%=2
par_groupby_pipepart tsv \t c1 $_%=2 NewRec
par_groupby_pipepart tsv \t c1 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t c1 $_%=2 NewRec
par_groupby_pipepart tsv \t c1 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t c1 $_%=2 NewRec
par_groupby_pipepart tsv \t c1 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t c1 $_%=2 NewRec
par_groupby_pipepart tsv \t c1 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t c1 $_%=2 NewRec
par_groupby_pipepart tsv \t c1 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t c1 $_%=2 NewRec
par_groupby_pipepart tsv \t c1 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t c1 $_%=2 NewRec
par_groupby_pipepart tsv \t c1 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t c1 $_%=2 NewRec
par_groupby_pipepart tsv \t c1 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t c1 $_%=2 NewRec
par_groupby_pipepart tsv \t c1 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t c1 $_%=2 NewRec
par_groupby_pipepart tsv \t c1 $_%=2 90001 540006 1170031
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ ### test tsv | --colsep \t --groupby s/^(\d+[\t ,]+){2}(\d+).*/$2/
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart tsv \t s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 $_%=2 ### test ssv | --colsep \s+ --groupby 3 $_%=2
par_groupby_pipepart ssv \s+ 3 $_%=2 NewRec
par_groupby_pipepart ssv \s+ 3 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 $_%=2 NewRec
par_groupby_pipepart ssv \s+ 3 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 $_%=2 NewRec
par_groupby_pipepart ssv \s+ 3 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 $_%=2 NewRec
par_groupby_pipepart ssv \s+ 3 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 $_%=2 NewRec
par_groupby_pipepart ssv \s+ 3 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 $_%=2 NewRec
par_groupby_pipepart ssv \s+ 3 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 $_%=2 NewRec
par_groupby_pipepart ssv \s+ 3 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 $_%=2 NewRec
par_groupby_pipepart ssv \s+ 3 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 $_%=2 NewRec
par_groupby_pipepart ssv \s+ 3 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 $_%=2 NewRec
par_groupby_pipepart ssv \s+ 3 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 ### test ssv | --colsep \s+ --groupby 3
par_groupby_pipepart ssv \s+ 3 NewRec
par_groupby_pipepart ssv \s+ 3 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 NewRec
par_groupby_pipepart ssv \s+ 3 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 NewRec
par_groupby_pipepart ssv \s+ 3 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 NewRec
par_groupby_pipepart ssv \s+ 3 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 NewRec
par_groupby_pipepart ssv \s+ 3 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 NewRec
par_groupby_pipepart ssv \s+ 3 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 NewRec
par_groupby_pipepart ssv \s+ 3 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 NewRec
par_groupby_pipepart ssv \s+ 3 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 NewRec
par_groupby_pipepart ssv \s+ 3 90001 540006 1170031
par_groupby_pipepart ssv \s+ 3 NewRec
par_groupby_pipepart ssv \s+ 3 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 ### test ssv | --colsep \s+ --groupby c1
par_groupby_pipepart ssv \s+ c1 NewRec
par_groupby_pipepart ssv \s+ c1 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 NewRec
par_groupby_pipepart ssv \s+ c1 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 NewRec
par_groupby_pipepart ssv \s+ c1 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 NewRec
par_groupby_pipepart ssv \s+ c1 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 NewRec
par_groupby_pipepart ssv \s+ c1 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 NewRec
par_groupby_pipepart ssv \s+ c1 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 NewRec
par_groupby_pipepart ssv \s+ c1 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 NewRec
par_groupby_pipepart ssv \s+ c1 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 NewRec
par_groupby_pipepart ssv \s+ c1 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 NewRec
par_groupby_pipepart ssv \s+ c1 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 $_%=2 ### test ssv | --colsep \s+ --groupby c1 $_%=2
par_groupby_pipepart ssv \s+ c1 $_%=2 NewRec
par_groupby_pipepart ssv \s+ c1 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 $_%=2 NewRec
par_groupby_pipepart ssv \s+ c1 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 $_%=2 NewRec
par_groupby_pipepart ssv \s+ c1 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 $_%=2 NewRec
par_groupby_pipepart ssv \s+ c1 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 $_%=2 NewRec
par_groupby_pipepart ssv \s+ c1 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 $_%=2 NewRec
par_groupby_pipepart ssv \s+ c1 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 $_%=2 NewRec
par_groupby_pipepart ssv \s+ c1 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 $_%=2 NewRec
par_groupby_pipepart ssv \s+ c1 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 $_%=2 NewRec
par_groupby_pipepart ssv \s+ c1 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ c1 $_%=2 NewRec
par_groupby_pipepart ssv \s+ c1 $_%=2 90001 540006 1170031
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ ### test ssv | --colsep \s+ --groupby s/^(\d+[\t ,]+){2}(\d+).*/$2/
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart ssv \s+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1170031
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 ### test cssv | --colsep [\s,]+ --groupby 3 $_%=2
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ 3 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 ### test cssv | --colsep [\s,]+ --groupby 3
par_groupby_pipepart cssv [\s,]+ 3 NewRec
par_groupby_pipepart cssv [\s,]+ 3 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 NewRec
par_groupby_pipepart cssv [\s,]+ 3 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 NewRec
par_groupby_pipepart cssv [\s,]+ 3 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 NewRec
par_groupby_pipepart cssv [\s,]+ 3 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 NewRec
par_groupby_pipepart cssv [\s,]+ 3 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 NewRec
par_groupby_pipepart cssv [\s,]+ 3 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 NewRec
par_groupby_pipepart cssv [\s,]+ 3 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 NewRec
par_groupby_pipepart cssv [\s,]+ 3 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 NewRec
par_groupby_pipepart cssv [\s,]+ 3 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ 3 NewRec
par_groupby_pipepart cssv [\s,]+ 3 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 ### test cssv | --colsep [\s,]+ --groupby c1
par_groupby_pipepart cssv [\s,]+ c1 NewRec
par_groupby_pipepart cssv [\s,]+ c1 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 NewRec
par_groupby_pipepart cssv [\s,]+ c1 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 NewRec
par_groupby_pipepart cssv [\s,]+ c1 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 NewRec
par_groupby_pipepart cssv [\s,]+ c1 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 NewRec
par_groupby_pipepart cssv [\s,]+ c1 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 NewRec
par_groupby_pipepart cssv [\s,]+ c1 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 NewRec
par_groupby_pipepart cssv [\s,]+ c1 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 NewRec
par_groupby_pipepart cssv [\s,]+ c1 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 NewRec
par_groupby_pipepart cssv [\s,]+ c1 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 NewRec
par_groupby_pipepart cssv [\s,]+ c1 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 ### test cssv | --colsep [\s,]+ --groupby c1 $_%=2
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 NewRec
par_groupby_pipepart cssv [\s,]+ c1 $_%=2 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ ### test cssv | --colsep [\s,]+ --groupby s/^(\d+[\t ,]+){2}(\d+).*/$2/
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1710037
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart cssv [\s,]+ s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 540006 1710037
par_groupby_pipepart csv , 3 $_%=2 ### test csv | --colsep , --groupby 3 $_%=2
par_groupby_pipepart csv , 3 $_%=2 NewRec
par_groupby_pipepart csv , 3 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , 3 $_%=2 NewRec
par_groupby_pipepart csv , 3 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , 3 $_%=2 NewRec
par_groupby_pipepart csv , 3 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , 3 $_%=2 NewRec
par_groupby_pipepart csv , 3 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , 3 $_%=2 NewRec
par_groupby_pipepart csv , 3 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , 3 $_%=2 NewRec
par_groupby_pipepart csv , 3 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , 3 $_%=2 NewRec
par_groupby_pipepart csv , 3 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , 3 $_%=2 NewRec
par_groupby_pipepart csv , 3 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , 3 $_%=2 NewRec
par_groupby_pipepart csv , 3 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , 3 $_%=2 NewRec
par_groupby_pipepart csv , 3 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , 3 ### test csv | --colsep , --groupby 3
par_groupby_pipepart csv , 3 NewRec
par_groupby_pipepart csv , 3 90001 90001 1170031
par_groupby_pipepart csv , 3 NewRec
par_groupby_pipepart csv , 3 90001 90001 1170031
par_groupby_pipepart csv , 3 NewRec
par_groupby_pipepart csv , 3 90001 90001 1170031
par_groupby_pipepart csv , 3 NewRec
par_groupby_pipepart csv , 3 90001 90001 1170031
par_groupby_pipepart csv , 3 NewRec
par_groupby_pipepart csv , 3 90001 90001 1170031
par_groupby_pipepart csv , 3 NewRec
par_groupby_pipepart csv , 3 90001 90001 1170031
par_groupby_pipepart csv , 3 NewRec
par_groupby_pipepart csv , 3 90001 90001 1170031
par_groupby_pipepart csv , 3 NewRec
par_groupby_pipepart csv , 3 90001 90001 1170031
par_groupby_pipepart csv , 3 NewRec
par_groupby_pipepart csv , 3 90001 90001 1170031
par_groupby_pipepart csv , 3 NewRec
par_groupby_pipepart csv , 3 90001 90001 1170031
par_groupby_pipepart csv , c1 ### test csv | --colsep , --groupby c1
par_groupby_pipepart csv , c1 NewRec
par_groupby_pipepart csv , c1 90001 90001 1170031
par_groupby_pipepart csv , c1 NewRec
par_groupby_pipepart csv , c1 90001 90001 1170031
par_groupby_pipepart csv , c1 NewRec
par_groupby_pipepart csv , c1 90001 90001 1170031
par_groupby_pipepart csv , c1 NewRec
par_groupby_pipepart csv , c1 90001 90001 1170031
par_groupby_pipepart csv , c1 NewRec
par_groupby_pipepart csv , c1 90001 90001 1170031
par_groupby_pipepart csv , c1 NewRec
par_groupby_pipepart csv , c1 90001 90001 1170031
par_groupby_pipepart csv , c1 NewRec
par_groupby_pipepart csv , c1 90001 90001 1170031
par_groupby_pipepart csv , c1 NewRec
par_groupby_pipepart csv , c1 90001 90001 1170031
par_groupby_pipepart csv , c1 NewRec
par_groupby_pipepart csv , c1 90001 90001 1170031
par_groupby_pipepart csv , c1 NewRec
par_groupby_pipepart csv , c1 90001 90001 1170031
par_groupby_pipepart csv , c1 $_%=2 ### test csv | --colsep , --groupby c1 $_%=2
par_groupby_pipepart csv , c1 $_%=2 NewRec
par_groupby_pipepart csv , c1 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , c1 $_%=2 NewRec
par_groupby_pipepart csv , c1 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , c1 $_%=2 NewRec
par_groupby_pipepart csv , c1 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , c1 $_%=2 NewRec
par_groupby_pipepart csv , c1 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , c1 $_%=2 NewRec
par_groupby_pipepart csv , c1 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , c1 $_%=2 NewRec
par_groupby_pipepart csv , c1 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , c1 $_%=2 NewRec
par_groupby_pipepart csv , c1 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , c1 $_%=2 NewRec
par_groupby_pipepart csv , c1 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , c1 $_%=2 NewRec
par_groupby_pipepart csv , c1 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , c1 $_%=2 NewRec
par_groupby_pipepart csv , c1 $_%=2 90001 90001 1170031
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ ### test csv | --colsep , --groupby s/^(\d+[\t ,]+){2}(\d+).*/$2/
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 90001 1170031
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 90001 1170031
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 90001 1170031
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 90001 1170031
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 90001 1170031
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 90001 1170031
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 90001 1170031
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 90001 1170031
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 90001 1170031
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ NewRec
par_groupby_pipepart csv , s/^(\d+[\t ,]+){2}(\d+).*/$2/ 90001 90001 1170031
par_macron ### See if \257\256 \257<\257> is replaced correctly
par_macron <09> -X <09>
par_macron <09> -X <09>
par_macron <09> -X <09> <20>
par_macron <09> -X <09> <20>
par_macron <09> -X <09><>
par_macron <09> -X <09><>
par_macron <09> -q <09>
par_macron <09> -q <09> <20>
par_macron <09> -q "<22>" <20>
par_macron <09> -q <09><>
par_macron <09> -q "<22>"<22>
2022-05-22 08:36:45 +00:00
par_macron <09> -q /usr/bin/bash: line 1: $'echo \257': command not found
par_macron <09> -Xq <09>
par_macron <09> -Xq <09> <20>
par_macron <09> -Xq "<22>" <20>
par_macron <09> -Xq <09><>
par_macron <09> -Xq "<22>"<22>
2022-05-22 08:36:45 +00:00
par_macron <09> -Xq /usr/bin/bash: line 1: $'echo \257': command not found
par_macron <09> -k <09>
par_macron <09> -k <09>
par_macron <09> -k <09> <20>
par_macron <09> -k <09> <20>
par_macron <09> -k <09><>
par_macron <09> -k <09><>
par_macron <09><> -X <09><>
par_macron <09><> -X <09><>
par_macron <09><> -X <09><> <20><>
par_macron <09><> -X <09><> <20><>
par_macron <09><> -X <09><><EFBFBD><EFBFBD>
par_macron <09><> -X <09><><EFBFBD><EFBFBD>
par_macron <09><> -q <09><>
par_macron <09><> -q <09><> <20><>
par_macron <09><> -q "<22><>" <20><>
par_macron <09><> -q <09><><EFBFBD><EFBFBD>
par_macron <09><> -q "<22><>"<22><>
2022-05-22 08:36:45 +00:00
par_macron <09><> -q /usr/bin/bash: line 1: $'echo \257\256': command not found
par_macron <09><> -Xq <09><>
par_macron <09><> -Xq <09><> <20><>
par_macron <09><> -Xq "<22><>" <20><>
par_macron <09><> -Xq <09><><EFBFBD><EFBFBD>
par_macron <09><> -Xq "<22><>"<22><>
2022-05-22 08:36:45 +00:00
par_macron <09><> -Xq /usr/bin/bash: line 1: $'echo \257\256': command not found
par_macron <09><> -k <09><>
par_macron <09><> -k <09><>
par_macron <09><> -k <09><> <20><>
par_macron <09><> -k <09><> <20><>
par_macron <09><> -k <09><><EFBFBD><EFBFBD>
par_macron <09><> -k <09><><EFBFBD><EFBFBD>
par_macron <09><><EFBFBD> -X <09><><EFBFBD>
par_macron <09><><EFBFBD> -X <09><><EFBFBD>
par_macron <09><><EFBFBD> -X <09><><EFBFBD> <20><><EFBFBD>
par_macron <09><><EFBFBD> -X <09><><EFBFBD> <20><><EFBFBD>
par_macron <09><><EFBFBD> -X <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
par_macron <09><><EFBFBD> -X <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
par_macron <09><><EFBFBD> -q <09><><EFBFBD>
par_macron <09><><EFBFBD> -q <09><><EFBFBD> <20><><EFBFBD>
par_macron <09><><EFBFBD> -q "<22><><EFBFBD>" <20><><EFBFBD>
par_macron <09><><EFBFBD> -q <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
par_macron <09><><EFBFBD> -q "<22><><EFBFBD>"<22><><EFBFBD>
2022-05-22 08:36:45 +00:00
par_macron <09><><EFBFBD> -q /usr/bin/bash: line 1: $'echo \257\257\256': command not found
par_macron <09><><EFBFBD> -Xq <09><><EFBFBD>
par_macron <09><><EFBFBD> -Xq <09><><EFBFBD> <20><><EFBFBD>
par_macron <09><><EFBFBD> -Xq "<22><><EFBFBD>" <20><><EFBFBD>
par_macron <09><><EFBFBD> -Xq <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
par_macron <09><><EFBFBD> -Xq "<22><><EFBFBD>"<22><><EFBFBD>
2022-05-22 08:36:45 +00:00
par_macron <09><><EFBFBD> -Xq /usr/bin/bash: line 1: $'echo \257\257\256': command not found
par_macron <09><><EFBFBD> -k <09><><EFBFBD>
par_macron <09><><EFBFBD> -k <09><><EFBFBD>
par_macron <09><><EFBFBD> -k <09><><EFBFBD> <20><><EFBFBD>
par_macron <09><><EFBFBD> -k <09><><EFBFBD> <20><><EFBFBD>
par_macron <09><><EFBFBD> -k <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
par_macron <09><><EFBFBD> -k <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
par_macron <09><<3C><<3C>><3E>> -X <09><<3C><<3C>><3E>>
par_macron <09><<3C><<3C>><3E>> -X <09><<3C><<3C>><3E>> <20><<3C><<3C>><3E>>
par_macron <09><<3C><<3C>><3E>> -X <09><<3C><<3C>><3E>><3E><<3C><<3C>><3E>>
2022-05-22 08:36:45 +00:00
par_macron <09><<3C><<3C>><3E>> -X /usr/bin/bash: -c: line 1: syntax error near unexpected token `newline'
par_macron <09><<3C><<3C>><3E>> -X /usr/bin/bash: -c: line 1: `echo <20><<3C><<3C>><3E>>'
par_macron <09><<3C><<3C>><3E>> -X /usr/bin/bash: line 1: <20>: No such file or directory
par_macron <09><<3C><<3C>><3E>> -X /usr/bin/bash: line 1: <20>: No such file or directory
par_macron <09><<3C><<3C>><3E>> -q <09><<3C><<3C>><3E>>
par_macron <09><<3C><<3C>><3E>> -q <09><<3C><<3C>><3E>> <20><<3C><<3C>><3E>>
par_macron <09><<3C><<3C>><3E>> -q "<22><<3C><<3C>><3E>>" <20><<3C><<3C>><3E>>
par_macron <09><<3C><<3C>><3E>> -q <09><<3C><<3C>><3E>><3E><<3C><<3C>><3E>>
par_macron <09><<3C><<3C>><3E>> -q "<22><<3C><<3C>><3E>>"<22><<3C><<3C>><3E>>
2022-05-22 08:36:45 +00:00
par_macron <09><<3C><<3C>><3E>> -q /usr/bin/bash: line 1: $'echo \257<\257<\257>\257>': command not found
par_macron <09><<3C><<3C>><3E>> -Xq <09><<3C><<3C>><3E>>
par_macron <09><<3C><<3C>><3E>> -Xq <09><<3C><<3C>><3E>> <20><<3C><<3C>><3E>>
par_macron <09><<3C><<3C>><3E>> -Xq "<22><<3C><<3C>><3E>>" <20><<3C><<3C>><3E>>
par_macron <09><<3C><<3C>><3E>> -Xq <09><<3C><<3C>><3E>><3E><<3C><<3C>><3E>>
par_macron <09><<3C><<3C>><3E>> -Xq "<22><<3C><<3C>><3E>>"<22><<3C><<3C>><3E>>
2022-05-22 08:36:45 +00:00
par_macron <09><<3C><<3C>><3E>> -Xq /usr/bin/bash: line 1: $'echo \257<\257<\257>\257>': command not found
par_macron <09><<3C><<3C>><3E>> -k <09><<3C><<3C>><3E>>
par_macron <09><<3C><<3C>><3E>> -k <09><<3C><<3C>><3E>> <20><<3C><<3C>><3E>>
par_macron <09><<3C><<3C>><3E>> -k <09><<3C><<3C>><3E>><3E><<3C><<3C>><3E>>
2022-05-22 08:36:45 +00:00
par_macron <09><<3C><<3C>><3E>> -k /usr/bin/bash: -c: line 1: syntax error near unexpected token `newline'
par_macron <09><<3C><<3C>><3E>> -k /usr/bin/bash: -c: line 1: `echo <20><<3C><<3C>><3E>>'
par_macron <09><<3C><<3C>><3E>> -k /usr/bin/bash: line 1: <20>: No such file or directory
par_macron <09><<3C><<3C>><3E>> -k /usr/bin/bash: line 1: <20>: 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 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:
par_memfree parallel: Warning: parallel --memfree 1t echo Free mem: ::: 1t
par_memory_leak ### Test for memory leaks
2021-02-17 14:49:47 +00:00
par_memory_leak Of 300 runs of 1 job at least one should be bigger than a 3000 job run
par_memory_leak Good: No memleak detected.
par_no_newline_compress bug #41613: --compress --line-buffer - no newline
par_no_newline_compress tagstring=--tagstring {#} compress=--compress
par_no_newline_compress 1 OK
par_no_newline_compress tagstring=--tagstring {#} compress=--compress
par_no_newline_compress 1 OK
par_no_newline_compress tagstring=--tagstring {#} compress=-k
par_no_newline_compress 1 OK
par_no_newline_compress tagstring=--tagstring {#} compress=-k
par_no_newline_compress 1 OK
par_no_newline_compress tagstring=-k compress=--compress
par_no_newline_compress OK
par_no_newline_compress tagstring=-k compress=--compress
par_no_newline_compress OK
par_no_newline_compress tagstring=-k compress=-k
par_no_newline_compress OK
par_no_newline_compress tagstring=-k compress=-k
par_no_newline_compress OK
par_plus_dyn_repl Dynamic replacement strings defined by --plus
par_plus_dyn_repl myval
par_plus_dyn_repl myval
par_plus_dyn_repl myval
par_plus_dyn_repl myval
par_plus_dyn_repl myval
par_plus_dyn_repl cAaBdefCdefDdef
par_plus_dyn_repl cAaBdefCdefDdef
par_plus_dyn_repl cAaBdefCdefDdef
par_plus_dyn_repl cAaBdefCdefDdef
par_plus_dyn_repl cAaBdefCdefDdef
par_plus_dyn_repl cAa
par_plus_dyn_repl cAa
par_plus_dyn_repl cAa
par_plus_dyn_repl cAa
par_plus_dyn_repl cAa
par_plus_dyn_repl 17
par_plus_dyn_repl 17
par_plus_dyn_repl 1
par_plus_dyn_repl abcAaBdefCdefDdef
par_plus_dyn_repl abcAaBdefCdefDdef
par_plus_dyn_repl abcAaBdefCdefDdef
par_plus_dyn_repl abcAaBdefCdefDdef
par_plus_dyn_repl abcAaBdefCdefDdef
par_plus_dyn_repl AaBdefCdefDdef
par_plus_dyn_repl AaBdefCdefDdef
par_plus_dyn_repl AaBdefCdefDdef
par_plus_dyn_repl AaBdefCdefDdef
par_plus_dyn_repl AaBdefCdefDdef
par_plus_dyn_repl abcAaBdefCdefDdef
par_plus_dyn_repl abcAaBdefCdefDdef
par_plus_dyn_repl abcAaBdefCdefDdef
par_plus_dyn_repl abcAaBdefCdefDdef
par_plus_dyn_repl abcAaBdefCdefDdef
par_plus_dyn_repl abcAaBdefCdefD
par_plus_dyn_repl abcAaBdefCdefD
par_plus_dyn_repl abcAaBdefCdefD
par_plus_dyn_repl abcAaBdefCdefD
par_plus_dyn_repl abcAaBdefCdefD
par_plus_dyn_repl abcAaBghiCdefDdef
par_plus_dyn_repl abcAaBghiCdefDdef
par_plus_dyn_repl abcAaBghiCdefDdef
par_plus_dyn_repl abcAaBghiCdefDdef
par_plus_dyn_repl abcAaBghiCdefDdef
par_plus_dyn_repl abcAaBghiCghiDghi
par_plus_dyn_repl abcAaBghiCghiDghi
par_plus_dyn_repl abcAaBghiCghiDghi
par_plus_dyn_repl abcAaBghiCghiDghi
par_plus_dyn_repl abcAaBghiCghiDghi
par_plus_dyn_repl AbcAaBdefCdefDdef
par_plus_dyn_repl AbcAaBdefCdefDdef
par_plus_dyn_repl AbcAaBdefCdefDdef
par_plus_dyn_repl AbcAaBdefCdefDdef
par_plus_dyn_repl AbcAaBdefCdefDdef
par_plus_dyn_repl AbcAABdefCdefDdef
par_plus_dyn_repl AbcAABdefCdefDdef
par_plus_dyn_repl AbcAABdefCdefDdef
par_plus_dyn_repl AbcAABdefCdefDdef
par_plus_dyn_repl AbcAABdefCdefDdef
par_plus_dyn_repl abcAaAdef
par_plus_dyn_repl abcAaAdef
par_plus_dyn_repl abcAaAdef
par_plus_dyn_repl abcAaAdef
par_plus_dyn_repl abcAaAdef
par_plus_dyn_repl abcaaadef
par_plus_dyn_repl abcaaadef
par_plus_dyn_repl abcaaadef
par_plus_dyn_repl abcaaadef
par_plus_dyn_repl abcaaadef
par_plus_dyn_repl abcabcdefdef ABCabcdefdef
par_plus_dyn_repl abcabcdefdef ABCabcdefdef
par_plus_dyn_repl abcabcdefdef abcabcdefDEF
par_plus_dyn_repl abcabcdefdef abcabcdefDEF
par_plus_dyn_repl abcabcdefdef abcdefdef
par_plus_dyn_repl abcabcdefdef abcdefdef
par_plus_dyn_repl abcabcdefdef abcabcdef
par_plus_dyn_repl abcabcdefdef abcabcdef
par_race_condition1 ### Test race condition on 8 CPU (my laptop)
par_race_condition1 1
par_race_condition1 2
par_race_condition1 3
par_race_condition1 4
par_race_condition1 5
par_race_condition1 6
par_race_condition1 7
par_race_condition1 8
par_race_condition1 9
par_race_condition1 10
par_shard ### --shard
par_shard OK
par_shard OK
par_shard OK
par_shard OK
par_shard OK
par_shard 10 1
par_shard 10 2
par_shard 10 3
par_shard 10 4
par_shard 10 5
par_shard 10 6
par_shard 10 7
par_shard 10 8
par_shard 10 9
par_shard 9 0
par_shard 9 1
par_shard 9 2
par_shard 9 3
par_shard 9 4
par_shard 9 5
par_shard 9 6
par_shard 9 7
par_shard 9 8
par_shard 9 9
par_shard ### --shard
par_shard 10 1
par_shard 10 2
par_shard 10 3
par_shard 10 4
par_shard 10 5
par_shard 10 6
par_shard 10 7
par_shard 10 8
par_shard 10 9
par_shard 9 0
par_shard 9 1
par_shard 9 2
par_shard 9 3
par_shard 9 4
par_shard 9 5
par_shard 9 6
par_shard 9 7
par_shard 9 8
par_shard 9 9
par_shard ### --shard
par_shard 10 1
par_shard 10 2
par_shard 10 3
par_shard 10 4
par_shard 10 5
par_shard 10 6
par_shard 10 7
par_shard 10 8
par_shard 10 9
par_shard 2 c1
par_shard 9 0
par_shard 9 1
par_shard 9 2
par_shard 9 3
par_shard 9 4
par_shard 9 5
par_shard 9 6
par_shard 9 7
par_shard 9 8
par_shard 9 9
par_shard 2 c2
par_shard 10 1
par_shard 10 2
par_shard 10 3
par_shard 10 4
par_shard 10 5
par_shard 10 6
par_shard 10 7
par_shard 10 8
par_shard 10 9
par_shard 2 c1
par_shard 9 0
par_shard 9 1
par_shard 9 2
par_shard 9 3
par_shard 9 4
par_shard 9 5
par_shard 9 6
par_shard 9 7
par_shard 9 8
par_shard 9 9
par_shard 2 c2
par_shard *** broken
par_shard parallel: Error: --shard requires --jobs to be higher than the number of
par_shard parallel: Error: arguments. Increase --jobs.
par_sighup ### Test SIGHUP
par_sighup 1
par_sighup 10
par_sighup 2
par_sighup 3
par_sighup 4
par_sighup 5
par_sighup 6
par_sighup 7
par_sighup 8
par_sighup 9
par_sighup parallel: SIGHUP received. No new jobs will be started.
par_sighup parallel: Waiting for these 5 jobs to finish. Send SIGTERM to stop now.
par_sighup parallel: sleep 15; echo 10
par_sighup parallel: sleep 15; echo 6
par_sighup parallel: sleep 15; echo 7
par_sighup parallel: sleep 15; echo 8
par_sighup parallel: sleep 15; echo 9
par_slow_total_jobs bug #51006: Slow total_jobs() eats job
par_slow_total_jobs a
par_slow_total_jobs b
par_slow_total_jobs 1
par_slow_total_jobs 2
par_slow_total_jobs parallel: Warning: Reading X arguments took longer than XX seconds.
par_test_detected_shell ### bug #42913: Dont use $SHELL but the shell currently running
2020-06-22 22:34:52 +00:00
par_test_detected_shell test_unknown_shell ash Global::shell /usr/bin/bash
par_test_detected_shell test_unknown_shell bash Global::shell /usr/bin/bash
par_test_detected_shell test_unknown_shell csh Global::shell /usr/bin/bash
par_test_detected_shell test_unknown_shell dash Global::shell /usr/bin/bash
par_test_detected_shell test_unknown_shell fish Global::shell /usr/bin/bash
par_test_detected_shell test_unknown_shell fizsh Global::shell /usr/bin/zsh
2020-06-22 22:34:52 +00:00
par_test_detected_shell test_unknown_shell ksh Global::shell /usr/bin/bash
par_test_detected_shell test_unknown_shell ksh93 Global::shell /usr/bin/bash
par_test_detected_shell test_unknown_shell mksh Global::shell /usr/bin/bash
par_test_detected_shell test_unknown_shell posh Global::shell /usr/bin/bash
par_test_detected_shell test_unknown_shell rbash Global::shell /usr/bin/bash
par_test_detected_shell test_unknown_shell rzsh Global::shell /usr/bin/bash
par_test_detected_shell test_unknown_shell sash Global::shell /usr/bin/sh
par_test_detected_shell test_unknown_shell sh Global::shell /usr/bin/bash
par_test_detected_shell test_unknown_shell tcsh Global::shell /usr/bin/bash
par_test_detected_shell test_unknown_shell yash Global::shell /usr/bin/bash
par_test_detected_shell test_unknown_shell zsh Global::shell /usr/bin/bash
par_test_detected_shell test_known_shell_c ash Global::shell /usr/bin/ash
par_test_detected_shell test_known_shell_c bash Global::shell /usr/bin/bash
par_test_detected_shell test_known_shell_c csh Global::shell /usr/bin/csh
par_test_detected_shell test_known_shell_c dash Global::shell /usr/bin/dash
par_test_detected_shell test_known_shell_c fish Global::shell /usr/bin/fish
par_test_detected_shell test_known_shell_c fizsh Global::shell /usr/bin/zsh
par_test_detected_shell test_known_shell_c ksh Global::shell /usr/bin/ksh
2020-06-22 22:34:52 +00:00
par_test_detected_shell test_known_shell_c ksh93 Global::shell /usr/bin/ksh93
par_test_detected_shell test_known_shell_c mksh Global::shell /usr/bin/mksh
par_test_detected_shell test_known_shell_c posh Global::shell /usr/bin/posh
2020-06-22 22:34:52 +00:00
par_test_detected_shell test_known_shell_c rbash Global::shell /usr/bin/rbash
par_test_detected_shell test_known_shell_c rzsh Global::shell /usr/bin/rzsh
par_test_detected_shell test_known_shell_c sash Global::shell /usr/bin/sh
par_test_detected_shell test_known_shell_c sh Global::shell /usr/bin/sh
par_test_detected_shell test_known_shell_c static-sh Global::shell /usr/bin/static-sh
par_test_detected_shell test_known_shell_c tcsh Global::shell /usr/bin/tcsh
par_test_detected_shell test_known_shell_c yash Global::shell /usr/bin/yash
par_test_detected_shell test_known_shell_c zsh Global::shell /usr/bin/zsh
2020-06-22 22:34:52 +00:00
par_test_detected_shell test_known_shell_pipe ash Global::shell /usr/bin/ash
par_test_detected_shell test_known_shell_pipe bash Global::shell /usr/bin/bash
par_test_detected_shell test_known_shell_pipe csh Global::shell /usr/bin/csh
par_test_detected_shell test_known_shell_pipe dash Global::shell /usr/bin/dash
par_test_detected_shell test_known_shell_pipe fish Global::shell /usr/bin/fish
par_test_detected_shell test_known_shell_pipe fizsh Global::shell /usr/bin/fizsh
par_test_detected_shell test_known_shell_pipe ksh Global::shell /usr/bin/ksh
2020-06-22 22:34:52 +00:00
par_test_detected_shell test_known_shell_pipe ksh93 Global::shell /usr/bin/ksh93
par_test_detected_shell test_known_shell_pipe mksh Global::shell /usr/bin/mksh
par_test_detected_shell test_known_shell_pipe posh Global::shell /usr/bin/posh
2020-06-22 22:34:52 +00:00
par_test_detected_shell test_known_shell_pipe rbash Global::shell /usr/bin/rbash
par_test_detected_shell test_known_shell_pipe rzsh Global::shell /usr/bin/rzsh
par_test_detected_shell test_known_shell_pipe sash Global::shell /usr/bin/sh
par_test_detected_shell test_known_shell_pipe sh Global::shell /usr/bin/sh
par_test_detected_shell test_known_shell_pipe static-sh Global::shell /usr/bin/static-sh
par_test_detected_shell test_known_shell_pipe tcsh Global::shell /usr/bin/tcsh
par_test_detected_shell test_known_shell_pipe yash Global::shell /usr/bin/yash
par_test_detected_shell test_known_shell_pipe zsh Global::shell /usr/bin/zsh
2022-07-24 07:13:30 +00:00
par_test_diff_roundrobin_k ### test there is difference on -k
par_test_diff_roundrobin_k OK
par_test_ipv6_format ### Host as IPv6 address