e2c0dd437a
..although it ought to work for other storage.KeyValueStore needs as well. it's just optimized to work pretty well for a largish hierarchy of paths. This includes the addition of "long benchmarks" for KeyValueStore testing. These will only be run when -test-bench-long is added to the test flags. In these benchmarks, a large corpus of paths matching a natural ("real-life") hierarchy is read from paths.data.gz (which you can get from https://github.com/storj/path-test-corpus) and imported into a particular KeyValueStore. Recursive and non-recursive queries are run on it to detect performance problems that arise only at scale. This also includes alternate implementation of the postgreskv client, which works in a less-bizarre way for non-recursive queries, but suffers from poor performance in tests such as the long benchmarks. Once this alternate impl is committed to the tree, we can remove it again; I just want it to be available for future reference. |
||
---|---|---|
.. | ||
audit | ||
auth | ||
cfgstruct | ||
datarepair | ||
dht | ||
eestream | ||
encryption | ||
kademlia | ||
metainfo/kvmetainfo | ||
miniogw | ||
node | ||
overlay | ||
paths | ||
pb | ||
peertls | ||
piecestore | ||
pointerdb | ||
process | ||
provider | ||
ranger | ||
statdb | ||
storage | ||
storj | ||
telemetry | ||
transport | ||
utils |