DESCRIPTION

To use the hash database API easily, the commands `tchtest', `tchmttest', and `tchmgr' are provided.

The command `tchtest' is a utility for facility test and performance test. This command is used in the following format. `path' specifies the path of a database file. `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.

tchtest write [-mt] [-tl] [-td|-tb|-tt|-tx] [-rc num] [-xm num] [-df num] [-nl|-nb] [-as] [-rnd] path rnum [bnum [apow [fpow]]]

Store records with keys of 8 bytes. They change as `00000001', `00000002'...

tchtest read [-mt] [-rc num] [-xm num] [-df num] [-nl|-nb] [-wb] [-rnd] path

Retrieve all records of the database above.

tchtest remove [-mt] [-rc num] [-xm num] [-df num] [-nl|-nb] [-rnd] path

Remove all records of the database above.

tchtest rcat [-mt] [-tl] [-td|-tb|-tt|-tx] [-rc num] [-xm num] [-df num] [-nl|-nb] [-pn num] [-dai|-dad|-rl|-ru] path rnum [bnum [apow [fpow]]]

Store records with partway duplicated keys using concatenate mode.

tchtest misc [-mt] [-tl] [-td|-tb|-tt|-tx] [-nl|-nb] path rnum

Perform miscellaneous test of various operations.

tchtest wicked [-mt] [-tl] [-td|-tb|-tt|-tx] [-nl|-nb] path rnum

Perform updating operations selected at random.

Options feature the following.

-mt : call the function `tchdbsetmutex'.

-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'.

-pn num : specify the number of patterns.

-dai : use the function `tchdbaddint' instead of `tchdbputcat'.

-dad : use the function `tchdbadddouble' instead of `tchdbputcat'.

-rl : set the length of values at random.

-ru : select update operations at random.

This command returns 0 on success, another on failure.

RELATED TO tchtest…