TCHMTTEST(1)
π TCHMTTEST β bestie's guide to the hash database API test cases π
okay so this is tchmttest, straight out of the Tokyo Cabinet manual (section 1, obvi) π
and she is not a normal everyday tool β she's a facility test utility that runs under multi-thread situations. Basically she stress-tests your hash database so you don't have to find out the hard way π
β¨ NAME β¨
tchmttest β test cases of the hash database API π
πΈ DESCRIPTION πΈ
The command tchmttest is a utility for facility test under multi-thread situation. Periodt. She's used in the following format, and bestie there are a lot of little knobs to turn π«Ά
Here's the vibe of the arguments:
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 π
And here are the actual modes, in all their glory β
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. π² (yes she's called wicked, she earned it π)
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 π
Options feature the following. Not a single one is skippable, bestie β she kept all of them π
-tlβ enable the optionHDBTLARGE. π«§-tdβ enable the optionHDBTDEFLATE. ποΈ-tbβ enable the optionHDBTBZIP. π§-ttβ enable the optionHDBTTCBS. ποΈ-txβ enable the optionHDBTEXCODEC. π§¬-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 optionHDBNOLCK. π-nbβ enable the optionHDBLCKNB. π«π-asβ use the functiontchdbputasyncinstead oftchdbput. β‘-rndβ select keys at random. π°-wbβ use the functiontchdbget3instead oftchdbget. π-ncβ omit the comparison test. π-rr numβ specify the ratio of reading operation by percentage. π
fr fr: this command returns 0 on success, another on failure. That's the whole exit-status story, no cap. π―
π¦ SEE ALSO π¦
and that's the whole page, bestie π₯Ή go forth and thread-safely test your hash database, you absolute icon π
mwah π β this was the Tokyo Cabinet man page, dated 2012-08-18, filed under TCHMTTEST(1). slay β¨
π¦ where this page comes from
- centos-stream 10: tokyocabinet 1.4.48-30.el10 Β· LGPL-2.1-or-later
- centos-stream 9: tokyocabinet 1.4.48-19.el9 Β· LGPLv2+
- centos-stream 9: tokyocabinet 1.4.48-19.el9 Β· LGPLv2+
- debian bookworm: tokyocabinet-bin 1.4.48-15 Β· LGPL-2.1-or-later
- debian trixie: tokyocabinet-bin 1.4.48-15.1+b1 Β· LGPL-2.1-or-later
- fedora 43: tokyocabinet 1.4.48-28.fc43 Β· LGPL-2.1-or-later
- fedora 43: tokyocabinet 1.4.48-28.fc43 Β· LGPL-2.1-or-later
- fedora 44: tokyocabinet 1.4.48-30.fc44 Β· LGPL-2.1-or-later
- fedora 44: tokyocabinet 1.4.48-30.fc44 Β· LGPL-2.1-or-later
- nixos 26.05: tokyocabinet 1.4.48
- nixpkgs unstable: tokyocabinet 1.4.48
- ubuntu jammy: tokyocabinet-bin 1.4.48-14build1 Β· LGPL-2.1-or-later
- ubuntu noble: tokyocabinet-bin 1.4.48-15.1build1 Β· LGPL-2.1-or-later
- ubuntu questing: tokyocabinet-bin 1.4.48-15.1build2
- ubuntu resolute: tokyocabinet-bin 1.4.48-15.1build3 Β· LGPL-2.1-or-later
- ubuntu stonking: tokyocabinet-bin 1.4.48-15.1build3 Β· LGPL-2.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms