---
name: "tchmttest"
section: "1"
platform: "linux"
package: "tokyocabinet-bin"
version: "1.4.48-15.1+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/tchmttest"
---

# tchmttest(1)

test cases of the hash database API

## 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**\] *path* *tnum* *rnum* \[*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**\] *path* *tnum*

Retrieve all records of the database above.

**tchmttest remove** \[**-rc** *num*\] \[**-xm** *num*\] \[**-df** *num*\] \[**-nl**\|**-nb**\] \[**-rnd**\] *path* *tnum*

Remove all records of the database above.

**tchmttest wicked** \[**-tl**\] \[**-td**\|**-tb**\|**-tt**\|**-tx**\] \[**-nl**\|**-nb**\] \[**-nc**\] *path* *tnum* *rnum*

Perform updating operations selected at random.

**tchmttest typical** \[**-tl**\] \[**-td**\|**-tb**\|**-tt**\|**-tx**\] \[**-rc** *num*\] \[**-xm** *num*\] \[**-df** *num*\] \[**-nl**\|**-nb**\] \[**-nc**\] \[**-rr** *num*\] *path* *tnum* *rnum* \[*bnum* \[*apow* \[*fpow*\]\]

Perform typical operations selected at random.

**tchmttest race** \[**-tl**\] \[**-td**\|**-tb**\|**-tt**\|**-tx**\] \[**-xm** *num*\] \[**-df** *num*\] \[**-nl**\|**-nb**\] *path* *tnum* *rnum* \[*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)](/tchtest/1.md), [**tchmgr**(1)](/tchmgr/1.md), [**tchdb**(3)](/tchdb/3.md), [**tokyocabinet**(3)](/tokyocabinet/3.md)
