POA startup switches for a little more control of Quickfinder indexing
QUICKFINDER THREAD PRIORITY
qflevel=0 (Indexes max of 1000 items at a time.)
qflevel=1 (Indexing is performed with a low priority thread. If there are less than 3 new items then it skips indexing for this DB. Indexes max of 500 items at a time.)
qflevel=2 (Indexing is performed with a medium priority thread. Index any new items. Indexes max of 1000 items at a time.)
qflevel=3 (Indexing is performed with a high priority thread. Index any new items. Indexes max of 2000 items at a time.)
qfdeleteold (Force delete of old IDX and INC files. On COMPRESS, or qflevel=1.)
qfuserfidbeg=c00 (Skip user DB's before this FID.)
qfuserfidend=fzz (Skip user DB's after this FID.)
These switches allow the ability to set a range of user DBs (or a specific user DB) to index. This is a little confusing, but the FID to be indexed has to be given in REVERSE ORDER (because of the way the POA does the indexing of user DBĀ·s). This option will be very helpful in duplicating or resolving a problem that is happening on a specific user DB.
Also use this range if to REGEN an index for a user, or a range of user DBs. (Make sure to use the 'qfnopreproc' and 'qfnolibs' switches when doing this.)
Priority in this case is confusing. qflevel has nothing to do with thread priority. It also has nothing to do with the queues. The queues are not involved in the indexing. An "indexing job" or "tracker" record or is written into the database for each new or modified item in the database. These records are used to control the indexing, not message files.
"Level" or "priority" for quickfinder consists of three things:
1) How many jobs it will perform per user during this indexing run.
2) Whether or not deleted words in the users index file should be "squeezed" out of the file
3) Whether or not the user's incremental index file should be merged into the main index file.
The defaults are:
"low" = 500 jobs, do not "squeeze" until the deleted space is 50% of the index file and over 100k, do not "merge" until the incremental is half as big as the main index file and over 100K
"medium" = 1000 jobs, do not "squeeze" until the deleted space is 25% of the index file and over 50k, do not "merge" until the incremental is one fourth as big as the main index file and over 50K
"high" = 2000 jobs, do not "squeeze" until the deleted space is 10% of the index file and over 25k, do not "merge" until the incremental is one tenth as big as the main index file and over 50K
The default priority is Medium. It does take significant time to "merge" and to "squeeze".
The order is:
1) Do the jobs
2) Merge if appropriate
3) Squeeze if appropriate
As a matter of convenience, qflevel-999 was used to bump the jobs to "all"