NAME

tchmttest - 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]pathtnumrnum[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]pathtnum
Retrieve all records of the database above.

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

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

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

tchmttest race [-tl][-td|-tb|-tt|-tx][-xm num][-df num][-nl|-nb]pathtnumrnum[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.

SEE ALSO

tchtest(1), tchmgr(1), tchdb(3), tokyocabinet(3)