components/parallel/TESTING
author Sean Wilcox <sean.wilcox@oracle.com>
Fri, 24 Mar 2017 14:28:46 -0600
changeset 7799 e35d3ee6d1b8
parent 7757 b1ac9348d4f0
permissions -rw-r--r--
PSARC 2017/039 cloudbase-init: Portable cloud image initialization with ConfigDrive 25615046 cloudbase-init should support configdrive on solaris 25027429 Enable cloudbase-init debug in config file
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
7757
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     1
The following scripts test the various components that make up GNU parallel.
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     2
They are based on examples in the GNU parallel man pages.
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     3
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     4
Note that the last one for sql has been obstificated to not disclose the
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     5
testers username and password or the name of the database.
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     6
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     7
There are lots more examples in the GNU parallel man page that can be used
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     8
to provide further testing if needed.
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
     9
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    10
----
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    11
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    12
$ cat niceload-test.sh
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    13
#!/bin/sh
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    14
PATH=/usr/bin
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    15
echo "Testing niceload"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    16
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    17
echo "EXAMPLE: See niceload in action"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    18
echo "     In terminal 1 run: top"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    19
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    20
echo "     In terminal 2 run:"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    21
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    22
echo "     niceload perl -e '$|=1;do{$l==$r or print \".\";"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    23
echo "     $l=$r}until(($r=time-$^T)>50)'"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    24
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    25
echo "     This will print a '.' every second for 50 seconds and eat a"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    26
echo "     lot of CPU. When the load rises to 1.0 the process is"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    27
echo "     suspended."
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    28
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    29
niceload -q perl -e '$|=1;do{$l==$r or print "."; $l=$r}until(($r=time-$^T)>50)'
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    30
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    31
----
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    32
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    33
$ cat parallel-test.sh
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    34
#!/bin/sh
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    35
PATH=/usr/bin:/usr/sbin
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    36
echo Testing parallel...
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    37
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    38
echo EXAMPLE: Composed commands
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    39
echo     A job can consist of several commands. This will print the
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    40
echo     number of files in each directory:
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    41
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    42
rm -rf test-dir
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    43
mkdir -p test-dir/a test-dir/b test-dir/c test-dir/d
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    44
(cd test-dir/a; touch 1 2 3 4 5 6 7 8 9 10 11 12)
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    45
(cd test-dir/b; touch 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20)
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    46
(cd test-dir/c; touch 1 2 3 4 5 6 7 8)
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    47
(cd test-dir/d; touch 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15)
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    48
(cd test-dir; ls | parallel 'echo -n {}" "; ls {}|wc -l')
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    49
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    50
echo "    To put the output in a file called <name>.dir:"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    51
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    52
(cd test-dir; ls | parallel '(echo -n {}" "; ls {}|wc -l) > {}.dir')
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    53
cat test-dir/a.dir
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    54
cat test-dir/b.dir
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    55
cat test-dir/c.dir
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    56
cat test-dir/d.dir
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    57
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    58
echo EXAMPLE: Group output lines
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    59
echo     When running jobs that output data, you often do not want
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    60
echo     the output of multiple jobs to run together. GNU parallel
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    61
echo     defaults to grouping the output of each job, so the output
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    62
echo     is printed when the job finishes. If you want the output to
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    63
echo     be printed while the job is running you can use -u.
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    64
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    65
echo     Compare the output of:
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    66
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    67
parallel traceroute ::: foss.org.my debian.org freenetproject.org
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    68
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    69
echo     to the output of:
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    70
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    71
parallel -u traceroute ::: foss.org.my debian.org freenetproject.org
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    72
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    73
echo EXAMPLE: Keep order of output same as order of input
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    74
echo      Normally the output of a job will be printed as soon as it
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    75
echo      completes. Sometimes you want the order of the output to
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    76
echo      remain the same as the order of the input. This is often
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    77
echo      important, if the output is used as input for another
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    78
echo      system. -k will make sure the order of output will be in the
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    79
echo      same order as input even if later jobs end before earlier
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    80
echo      jobs.
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    81
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    82
echo      Append a string to every line in a text file:
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    83
echo      If you remove -k some of the lines may come out in the wrong
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    84
echo      order.
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    85
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    86
echo BEFORE:
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    87
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    88
cat textfile
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    89
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    90
echo AFTER:
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    91
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    92
cat textfile | parallel -k echo {} append_string
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    93
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    94
----
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    95
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    96
$ cat parcat-test.sh
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    97
#!/bin/sh
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    98
PATH=/usr/bin
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
    99
echo "Testing parcat"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   100
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   101
echo "mkfifo slot-{1..5}-digit-{0..9}"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   102
echo "parallel -j5 'seq 100000 | grep {} > slot-{%}-digit-{}' ::: {0..9} &"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   103
echo "parallel parcat slot-{1..5}-digit-{} '>' digit-{} ::: {0..9}"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   104
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   105
rm -f slot* digit*
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   106
mkfifo slot-{1..5}-digit-{0..9}
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   107
parallel -j5 'seq 100000 | grep {} > slot-{%}-digit-{}' ::: {0..9} &
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   108
parallel parcat slot-{1..5}-digit-{} '>' digit-{} ::: {0..9}
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   109
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   110
----
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   111
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   112
$ cat sem-test.sh
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   113
#!/bin/sh
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   114
PATH=/usr/bin:/usr/sbin:/usr/perl5/5.22/bin
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   115
echo Testing sem
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   116
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   117
echo EXAMPLE: Gzipping *.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   118
echo      Run one gzip process per CPU core. Block until a CPU core
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   119
echo      becomes available.
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   120
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   121
rm -rf test-dir
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   122
mkdir test-dir
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   123
mkfile -v 150k test-dir/a.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   124
mkfile -v 150k test-dir/b.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   125
mkfile -v 150k test-dir/c.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   126
mkfile -v 150k test-dir/d.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   127
mkfile -v 150k test-dir/e.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   128
mkfile -v 150k test-dir/f.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   129
mkfile -v 150k test-dir/g.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   130
mkfile -v 150k test-dir/h.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   131
mkfile -v 150k test-dir/i.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   132
mkfile -v 150k test-dir/j.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   133
mkfile -v 150k test-dir/k.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   134
mkfile -v 150k test-dir/l.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   135
mkfile -v 150k test-dir/m.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   136
mkfile -v 150k test-dir/n.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   137
mkfile -v 150k test-dir/o.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   138
mkfile -v 150k test-dir/p.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   139
mkfile -v 150k test-dir/q.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   140
mkfile -v 150k test-dir/r.log
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   141
for i in `ls test-dir/*.log` ; do
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   142
  echo $i
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   143
  sem -j+0 gzip $i ";" echo done
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   144
done
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   145
sem --wait
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   146
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   147
echo "EXAMPLE: Protecting pod2html from itself"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   148
echo "    pod2html creates two files: pod2htmd.tmp and pod2htmi.tmp"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   149
echo "    which it does not clean up. It uses these two files for a"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   150
echo "    short time. But if you run multiple pod2html in parallel"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   151
echo "    (e.g. in a Makefile with make -j) you need to protect"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   152
echo "    pod2html from running twice at the same time. sem running as"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   153
echo "    a mutex will do just that:"
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   154
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   155
#cp .../components/perl512/perl-5.12.4/Porting/pumpkin.pod .
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   156
sem --fg --id pod2html pod2html pumpkin.pod > pumpkin.html
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   157
sem --fg --id pod2html rm -f pod2htmd.tmp pod2htmi.tmp
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   158
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   159
----
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   160
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   161
$ cat sql-test.sh
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   162
#!/bin/sh
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   163
PATH=/usr/bin:/usr/sbin:/usr/perl5/5.22/bin
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   164
echo Testing sql
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   165
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   166
echo EXAMPLE: Attaching to the BugDB database.
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   167
echo
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   168
sql oracle://<USERNAME>:<PASSWORD>@<DATABASE NAME>
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   169
b1ac9348d4f0 PSARC 2017/036 GNU parallel 20170122
Rich Burridge <rich.burridge@oracle.com>
parents:
diff changeset
   170
----