khepri_mnesia_migration 0.6.0
At this point,
khepri_mnesia_migration
should be considered Alpha and not production ready. The API will likely evolve and future releases will likely introduce breaking changes. The goal of this release is to make it easy for anyone to try it and possibly give feedback.
What's new in khepri_mnesia_migration
0.6.0
Improved logging
If khepri_mnesia_migration
could not setup the projection, it used to log a LOT and at the "warning" level on top of that. This was scary and spammy for no good reasons because the function works just fine even without the projection.
See #14.
Support for clustered nodes that lost their state
If a node loses its state, i.e. all Khepri and Mnesia data on disk, calling mnesia_to_khepri:sync_cluster_membership/1
wouldn’t repair the cluster before this patch.
At best, it would leave the nodes untouched, thus with all but one nodes that think the lost node is clustered, and the lost node that believes it is unclustered.
This scenario is now supported and the cluster will be correctly repaired.
See #16.
Other changes
- Use
khepri_cluster:is_store_running/1
instead of rolling our own poor copy (#15). - Khepri was bumped from 0.13.0 to 0.15.0 (#17).
Download
khepri_mnesia_migration
0.6.0 is available from Hex.pm: https://hex.pm/packages/khepri_mnesia_migration/0.6.0
Upgrade
Using Rebar:
-
Update your
rebar.config
:%% In rebar.config {deps, [{khepri_mnesia_migration, "0.6.0"}]}.
-
Run
rebar3 upgrade khepri_mnesia_migration
.
Using Erlang.mk:
-
Update your
Makefile
:%% In your Makefile dep_khepri_mnesia_migration = hex 0.6.0
-
Remove the
deps/khepri_mnesia_migration
directory. The new version will be fetched the next time you build your project.
Documentation
The documentation for khepri_mnesia_migration
0.6.0 is available on Hex.pm.