---
name: "tcttest"
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/tcttest"
---

# tcttest(1)

test cases of the table database API

## NAME

tcttest - test cases of the table database API

## DESCRIPTION

The command \`**tcttest**' 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.

**tcttest write** \[**-mt**\] \[**-tl**\] \[**-td**\|**-tb**\|**-tt**\|**-tx**\] \[**-rc** *num*\] \[**-lc** *num*\] \[**-nc** *num*\] \[**-xm** *num*\] \[**-df** *num*\] \[**-ip**\] \[**-is**\] \[**-in**\] \[**-it**\] \[**-if**\] \[**-ix**\] \[**-nl**\|**-nb**\] \[**-rnd**\] *path* *rnum* \[*bnum* \[*apow* \[*fpow*\]\]\]

Store records with columns "str", "num", "type", and "flag".

**tcttest read** \[**-mt**\] \[**-rc** *num*\] \[**-lc** *num*\] \[**-nc** *num*\] \[**-xm** *num*\] \[**-df** *num*\] \[**-nl**\|**-nb**\] \[**-rnd**\] *path*

Retrieve all records of the database above.

**tcttest remove** \[**-mt**\] \[**-rc** *num*\] \[**-lc** *num*\] \[**-nc** *num*\] \[**-xm** *num*\] \[**-df** *num*\] \[**-nl**\|**-nb**\] \[**-rnd**\] *path*

Remove all records of the database above.

**tcttest rcat** \[**-mt**\] \[**-tl**\] \[**-td**\|**-tb**\|**-tt**\|**-tx**\] \[**-rc** *num*\] \[**-lc** *num*\] \[**-nc** *num*\] \[**-xm** *num*\] \[**-df** *num*\] \[**-ip**\] \[**-is**\] \[**-in**\] \[**-it**\] \[**-if**\] \[**-ix**\] \[**-nl**\|**-nb**\] \[**-pn** *num*\] \[**-dai**\|**-dad**\|**-rl**\|**-ru**\] *path* *rnum* \[*bnum* \[*apow* \[*fpow*\]\]\]

Store records with partway duplicated keys using concatenate mode.

**tcttest misc** \[**-mt**\] \[**-tl**\] \[**-td**\|**-tb**\|**-tt**\|**-tx**\] \[**-nl**\|**-nb**\] *path* *rnum*

Perform miscellaneous test of various operations.

**tcttest 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 \`tctdbsetmutex'.\
 **-tl** : enable the option \`TDBTLARGE'.\
 **-td** : enable the option \`TDBTDEFLATE'.\
 **-tb** : enable the option \`TDBTBZIP'.\
 **-tt** : enable the option \`TDBTTCBS'.\
 **-tx** : enable the option \`TDBTEXCODEC'.\
 **-rc** *num* : specify the number of cached records.\
 **-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.\
 **-ip** : create the number index for the primary key.\
 **-is** : create the string index for the column "str".\
 **-in** : create the number index for the column "num".\
 **-it** : create the string index for the column "type".\
 **-if** : create the token inverted index for the column "flag".\
 **-ix** : create the q-gram inverted index for the column "text".\
 **-nl** : enable the option \`TDBNOLCK'.\
 **-nb** : enable the option \`TDBLCKNB'.\
 **-rnd** : select keys at random.\
 **-pn** *num* : specify the number of patterns.\
 **-dai** : use the function \`tctdbaddint' instead of \`tctdbputcat'.\
 **-dad** : use the function \`tctdbadddouble' instead of \`tctdbputcat'.\
 **-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

[**tctmttest**(1)](/tctmttest/1.md), [**tctmgr**(1)](/tctmgr/1.md), [**tctdb**(3)](/tctdb/3.md), [**tokyocabinet**(3)](/tokyocabinet/3.md)
