0.9.0
- Bugfixes for scenarios causing Horde to crash. See #266 and #263.
- [BREAKING] The first parameter of
Horde.DistributionStrategy.choose_node/2
has changed from the identifier to the full child spec. See #239. - Use
:erpc
instead of :rpc
. See #265. - Stop eagerly registering processes in Horde.Registry. This solves #250.
- Add
Horde.UniformRandomDistribution
process distribution strategy. See #252.
0.8.7
- Tweak dependency on
:telemetry
0.8.6
- Fix an issue with
members: :auto
0.8.5
- Add support for telemetry version 1.0.0
0.8.4
- Upgrade to delta_crdt 0.6.0
0.8.3
0.8.2
- Bump version of
telemetry_poller
dependency. #212
0.8.1
0.8.0
Horde.DynamicSupervisor
behaviour in a netsplit has changed. Previously, when a netsplit heals, Horde.DynamicSupervisor
would try to clean up any duplicate processes. It no longer does this, leaving that responsibility to Horde.Registry
. #196Horde.DynamicSupervisor
and Horde.Registry
now support the option members: :auto
to automatically detect other identically-named supervisors or registries. #184Horde.DynamicSupervisor
now supports the option process_redistribution: :active
to rebalance processes actively (aka, when a node joins or leaves the cluster). The default is :passive
, which only redistributes processes when a node dies or loses quorum. #164.
0.7.1
- Use MFA for
on_diff
instead of anonymous function, avoids passing around functions (which can be error-prone). #167.
0.7.0
0.6.1
- Module-based
Horde.Supervisor
can override child_spec/1
. #135 - Added guides for handling clustering, process state handoff (during deploys), and special considerations for eventual consistency to the documentation.
Horde.Supervisor
now uses libring to distribute processes over nodes. #130Horde.Supervisor
publishes metrics with :telemetry
([:horde, :supervisor, :supervised_process_count]
). #132Horde.Supervisor
and Horde.Registry
now support option delta_crdt_options
, which you can use to tune your cluster. Also updated to the most recent DeltaCRDT. #100
0.6.0