tcbtest(1) test cases of the B+ tree database API

DESCRIPTION

The command `tcbtest' 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. `lmemb' specifies the number of members in each leaf page. `nmemb' specifies the number of members in each non-leaf page. `bnum' specifies the number of buckets. `apow' specifies the power of the alignment. `fpow' specifies the power of the free block pool.


tcbtest write [-mt] [-cd|-ci|-cj] [-tl] [-td|-tb|-tt|-tx] [-lc num] [-nc num] [-xm num] [-df num] [-ls num] [-ca num] [-nl|-nb] [-rnd] path rnum [lmemb [nmemb [bnum [apow [fpow]]]]]
Store records with keys of 8 bytes. They change as `00000001', `00000002'...

tcbtest read [-mt] [-cd|-ci|-cj] [-lc num] [-nc num] [-xm num] [-df num] [-nl|-nb] [-wb] [-rnd] path
Retrieve all records of the database above.

tcbtest remove [-mt] [-cd|-ci|-cj] [-lc num] [-nc num] [-xm num] [-df num] [-nl|-nb] [-rnd] path
Remove all records of the database above.

tcbtest rcat [-mt] [-cd|-ci|-cj] [-tl] [-td|-tb|-tt|-tx] [-lc num] [-nc num] [-xm num] [-df num] [-ls num] [-ca num] [-nl|-nb] [-pn num] [-dai|-dad|-rl|-ru] path rnum [lmemb [nmemb [bnum [apow [fpow]]]]]
Store records with partway duplicated keys using concatenate mode.

tcbtest queue [-mt] [-cd|-ci|-cj] [-tl] [-td|-tb|-tt|-tx] [-lc num] [-nc num] [-xm num] [-df num] [-ls num] [-ca num] [-nl|-nb] path rnum [lmemb [nmemb [bnum [apow [fpow]]]]]
Perform queueing and dequeueing.

tcbtest misc [-mt] [-tl] [-td|-tb|-tt|-tx] [-nl|-nb] path rnum
Perform miscellaneous test of various operations.

tcbtest 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'.
-cd : use the comparison function `tccmpdecimal'.
-ci : use the comparison function `tccmpint32'.
-cj : use the comparison function `tccmpint64'.
-tl : enable the option `BDBTLARGE'.
-td : enable the option `BDBTDEFLATE'.
-tb : enable the option `BDBTBZIP'.
-tt : enable the option `BDBTTCBS'.
-tx : enable the option `BDBTEXCODEC'.
-lc num : specify the number of cached leaf pages.
-nc num : specify the number of cached non-leaf pages.
-xm num : specify the size of the extra mapped memory.
-df num : specify the unit step number of auto defragmentation.
-ls num : specify the maximum size of each leaf page.
-ca num : specify the capacity number of records.
-nl : enable the option `BDBNOLCK'.
-nb : enable the option `BDBLCKNB'.
-rnd : select keys at random.
-wb : use the function `tcbdbget3' instead of `tcbdbget'.
-pn num : specify the number of patterns.
-dai : use the function `tcbdbaddint' instead of `tcbdbputcat'.
-dad : use the function `tcbdbadddouble' instead of `tcbdbputcat'.
-rl : set the length of values at random.
-ru : select update operations at random.

This command returns 0 on success, another on failure.