aboutsummaryrefslogtreecommitdiffstats
path: root/util/hashring.lua
Commit message (Collapse)AuthorAgeFilesLines
* util.hashring: Support associating arbitrary data with nodesMatthew Wild2022-12-021-9/+23
| | | | | | | | | | | | | | | In this API, a 'node' is always a simple text string. Sometimes the caller may have a more complex structure representing a node, but the hash ring is really only concerned with the node's name. This API change allows :add_nodes() to take a table of `node_name = value` pairs, as well as the simple array of node names previously accepted. The 'value' of the selected node is returned as a new second result from :get_node(). If no value is passed when a node is added, it defaults to `true` (as before, but this was never previously exposed).
* util.hashring: Normalize indentation to tabsKim Alvefur2020-11-151-8/+8
|
* util.hashring: Implementation of hashring data structureMatthew Wild2019-05-131-0/+88