To open a table in a Tokyo Cabinet one needs to create a new handle with
tcbdbnew() and actually open a file with
tcbdbopen(). Before opening, one can prepare the handle for multi-threaded use with
tcbdbsetmutex(), set a custom comparison function with
tcbdbsetcmpfunc(), and set various tuning parameters with
tcbdbtune(). MySQL is multi-threaded, so we will use that handle concurrently, and, of course, we will need our comparison function, but we won't do any tuning in our example. There is no special function to create a Tokyo Cabinet file, it is created by opening. That is, both
ha_tocab::create() will open a Tokyo Cabinet file, and we can factor out this functionality in a helper ...