Skip to content

Commit 1dba19f

Browse files
Explain how this plugin interacts with Khepri and Mnesia
1 parent 18d8135 commit 1dba19f

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

README.md

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,16 @@ of some kind.
3333

3434
The most recent release of this plugin targets RabbitMQ 4.0.x.
3535

36-
This plugin can be enabled on a RabbitMQ cluster that uses either Mnesia or Khepri as metadata store.
36+
This plugin can be enabled on a RabbitMQ cluster that uses either Mnesia or Khepri as [metadata store](https://www.rabbitmq.com/docs/metadata-store),
37+
however, when this plugin is enabled **before** Khepri, it must be restarted (or the node must be)
38+
after Khepri is enabled.
3739

38-
Warning: the plugin must be disabled during Khepri migration. One
39-
needs to disable this plugin before enabling the `khepri_db` feature
40-
flag and enable it after. This will result in losing all previous
41-
delayed messages.
40+
In other words, there are three possible scenarios w.r.t. the schema data store used:
41+
42+
1. If the cluster uses Mnesia for schema store, it works exactly as it did against RabbitMQ 3.13.x
43+
2. If the cluster uses Khepri and the plugin is enabled after Khepri, it will start Mnesia, set up a node-local Mnesia replica and schema, and works as in scenario 1
44+
3. **Important**: if the cluster uses Mnesia, then the plugin is enabled, and then Khepri is enabled, the plugin must be disabled and re-enabled, or the node must be restarted.
45+
Then it will start Mnesia and works as in scenario 2
4246

4347
## Supported Erlang/OTP Versions
4448

@@ -210,6 +214,6 @@ The EZ file is created in the `bazel-bin` directory.
210214
1. Allow the Release workflow to run and create a draft release
211215
1. Review and publish the release
212216

213-
## LICENSE ##
217+
## LICENSE
214218

215219
See the LICENSE file.

0 commit comments

Comments
 (0)