Drive Dostats
Utility: drive_dostats Synopsis: This is a ksh script that will divide the tables from a single database among N copies of dostats running in parallel. Tables are distributed according to size in round robin fashion. Any dostats options that do not conflict with the -d, -t and -i options passed by the script will be passed along to all copies of dostats. Author: Art S. Kagel Revision: 1.7 Comments: As usual, running drive_dostats with no arguments will display a usage aid. Thanks to Douglas McAllister for the inspiration. Release Notes: Version 1.7 fixes a problem arising out of differing output formats from varying versions of wc on different platforms. Version 1.5 fixes a problem handling really HUGE exclude files. Dostats, and until this release drive_dostats also, handles exclude files by building a large 'NOT IN (...)' clause. This fails if the exclude file contains more than about 30,000 bytes as the maximum size of a SQL statement that IDS will process is 32K. Drive_dostats now loads the exclude list into a temp table and uses that to produce the include files the several copies of dostats process. Drive_dostats can now be used to process very large exclude files. Version 1.2 & 1.3 add new options -x<tablename>and -x@<filename>so users can specify specific files or lists of files to exclude from processing. This is similar to the underlying -x options to dostats itself except that database names are not handled. Multiple -x and -x@ options are accepted and may be intermingled. Changed the allocation of tables to the dostats children to more evenly distribute the work. Allocation now sweeps back and forth across the children rather than the strict round robin allocation of v1.1. Improved the filtering out of system catalog tables, non-catalog tables beginning with 'sys' were being ignored improperly. Version 1.4 just removes a leftover debug line. Notes in the script suggest alternative sorting criteria to better allocate tables to children, implementation left to user's needs. Added echos of the commandlines passed to the children.