tchmttest(1) test cases of the hash database API

DESCRIPTION

The command `tchmttest' is a utility for facility test under multi-thread situation. This command is used in the following format. `path' specifies the path of a database file. `tnum' specifies the number of running threads. `rnum' specifies the number of iterations. `bnum' specifies the number of buckets. `apow' specifies the power of the alignment. `fpow' specifies the power of the free block pool.


tchmttest write [-tl] [-td|-tb|-tt|-tx] [-rc num] [-xm num] [-df num] [-nl|-nb] [-as] [-rnd] path tnum rnum [bnum [apow [fpow]]]
Store records with keys of 8 bytes. They change as `00000001', `00000002'...

tchmttest read [-rc num] [-xm num] [-df num] [-nl|-nb] [-wb] [-rnd] path tnum
Retrieve all records of the database above.

tchmttest remove [-rc num] [-xm num] [-df num] [-nl|-nb] [-rnd] path tnum
Remove all records of the database above.

tchmttest wicked [-tl] [-td|-tb|-tt|-tx] [-nl|-nb] [-nc] path tnum rnum
Perform updating operations selected at random.

tchmttest typical [-tl] [-td|-tb|-tt|-tx] [-rc num] [-xm num] [-df num] [-nl|-nb] [-nc] [-rr num] path tnum rnum [bnum [apow [fpow]]
Perform typical operations selected at random.

tchmttest race [-tl] [-td|-tb|-tt|-tx] [-xm num] [-df num] [-nl|-nb] path tnum rnum [bnum [apow [fpow]]
Perform race condition test.

Options feature the following.

-tl : enable the option `HDBTLARGE'.
-td : enable the option `HDBTDEFLATE'.
-tb : enable the option `HDBTBZIP'.
-tt : enable the option `HDBTTCBS'.
-tx : enable the option `HDBTEXCODEC'.
-rc num : specify the number of cached records.
-xm num : specify the size of the extra mapped memory.
-df num : specify the unit step number of auto defragmentation.
-nl : enable the option `HDBNOLCK'.
-nb : enable the option `HDBLCKNB'.
-as : use the function `tchdbputasync' instead of `tchdbput'.
-rnd : select keys at random.
-wb : use the function `tchdbget3' instead of `tchdbget'.
-nc : omit the comparison test.
-rr num : specify the ratio of reading operation by percentage.

This command returns 0 on success, another on failure.