Hello,
the master branch got a new module named mtree. It is able to load database records in the form of (key,value) and index them in shared memory trees based on key. One db table is loaded in one mtree, you can define as many trees as you need.
The typical use case is to load arbitrary data related to DIDs or prefixes, offering very fast lookup even with large number of records. The value can be string or digested in a runtime structure, so far being able to digest dstid:weight values, useful for prefix matching on weight rather than longest match.
The trees are read only, with option to reload via mi command (rpc to be added soon). Online readme at: http://sip-router.org/docbook/sip-router/branch/master/modules/mtree/mtree.h...
Cheers, Daniel