diff options
author | Matthew Sackman <matthew@rabbitmq.com> | 2011-05-17 12:28:39 +0100 |
---|---|---|
committer | Matthew Sackman <matthew@rabbitmq.com> | 2011-05-17 12:28:39 +0100 |
commit | 26b59ab8d2e38fab17d45470d17091ced7afca2a (patch) | |
tree | eb31bd323bc01fab7efa5bb34894d3e7d9e0ed6e | |
parent | 9e744ff212999ee6e4244504ffd4878334c7846a (diff) | |
download | rabbitmq-server-26b59ab8d2e38fab17d45470d17091ced7afca2a.tar.gz |
Add upgrade step to add the mirror pids to the queue
-rw-r--r-- | src/rabbit_upgrade_functions.erl | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/rabbit_upgrade_functions.erl b/src/rabbit_upgrade_functions.erl index 31bbb929..325156b1 100644 --- a/src/rabbit_upgrade_functions.erl +++ b/src/rabbit_upgrade_functions.erl @@ -28,6 +28,7 @@ -rabbit_upgrade({topic_trie, mnesia, []}). -rabbit_upgrade({semi_durable_route, mnesia, []}). -rabbit_upgrade({exchange_event_serial, mnesia, []}). +-rabbit_upgrade({mirror_pids, mnesia, []}). %% ------------------------------------------------------------------- @@ -41,6 +42,7 @@ -spec(topic_trie/0 :: () -> 'ok'). -spec(exchange_event_serial/0 :: () -> 'ok'). -spec(semi_durable_route/0 :: () -> 'ok'). +-spec(mirror_pids/0 :: () -> 'ok'). -endif. @@ -113,6 +115,19 @@ exchange_event_serial() -> create(rabbit_exchange_serial, [{record_name, exchange_serial}, {attributes, [name, next]}]). +mirror_pids() -> + Tables = [rabbit_queue, rabbit_durable_queue], + AddMirrorPidsFun = + fun ({amqqueue, Name, Durable, AutoDelete, Owner, Arguments, Pid}) -> + {amqqueue, Name, Durable, AutoDelete, Owner, Arguments, Pid, []} + end, + [ ok = transform(T, + AddMirrorPidsFun, + [name, durable, auto_delete, exclusive_owner, arguments, + pid, mirror_pids]) + || T <- Tables ], + ok. + %%-------------------------------------------------------------------- transform(TableName, Fun, FieldList) -> |