tcbtest - test cases of the B+ tree database API
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.