Batch.Indexing

Published ByDateVersionKnowledge LevelKeywords
Sprezzatura Ltd01 MAR 19922.11+EXPERTBATCH.INDEXING

BATCH.INDEXING is a routine which permits the buffering of index transactions in memory until certain pre-set limits are reached. Using this routine, speed improvements of 30%+ are typical. The usage is simple, just call

     BATCH.INDEXING(1, File_Var)

to turn batching on, and

     BATCH.INDEXING(0, File_Var)

to turn it off.

From thereon, index transactions are buffered in memory for that file and not actually written to the ! datafile. The pre-set limits are documented in the latest "System Subroutines" book from Revelation Technologies as follows

"BATCH.INDEXING either buffers a set amount of data (1,000 bytes) or buffers for a limited time (5 seconds), whichever occurs first, so you need not be concerned with overrunning memory space".

Caveats

The information buffered by BATCH.INDEXING is only flushed to disk by the ! code and by a direct call to BATCH.INDEXING turning the buffering off. Further, only one file is buffered at a time. This has four major implications ;

(Volume 3, Issue 9, Pages 5,6)