TCHTEST

NAME
DESCRIPTION
SEE ALSO

NAME

tchtest − test cases of the hash database API

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.

SEE ALSO

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