summaryrefslogtreecommitdiff
path: root/src/rabbit_mirror_queue_coordinator.erl
Commit message (Collapse)AuthorAgeFilesLines
* Rename GM:terminate/2 to GM:handle_terminate/2 so that it doesn't conflict ↵Simon MacMullen2014-09-171-5/+4
| | | | with the same callback in gen_server.
* go back to from members_changed/4 to /3Matthias Radestock2014-04-171-3/+3
|
* drive remove_from_queue with DeadGMPidsMatthias Radestock2014-04-161-5/+5
| | | | | | | | | | | | | | ...instead of LiveGMPids The latter may be out of date s.t. it contains fewer pids than are actually alive, due to new GMs having sprung into live recently. We'd then, incorrectly, remove the corresponding entries from the queue's mnesia record, causing havoc. DeadGMPids can be out of date too; it may contain fewer pids than have actually died, due to GMs having died more recently. That is harmless though since it never leads us to remove an entry that we shouldn't, and we will learn about any new deaths eventually.
* Update copyright for 2014bug25940Simon MacMullen2014-03-171-1/+1
|
* Revert changes to add proc_name via gen_server2, instead do it explicitly ↵bug25910Simon MacMullen2014-01-101-2/+2
| | | | with a helper macro.
* Add queue_coordinator / queue_syncer / gm. Shift to getting gen_server2 to ↵Simon MacMullen2013-12-101-1/+2
| | | | store the name in most cases.
* Merged stable into defaultEmile Joubert2013-09-111-6/+7
|\
| * More consistent naming.Simon MacMullen2013-09-111-5/+6
| |
| * Take GM's view of the live members each time we have a death message; don't ↵Simon MacMullen2013-09-021-6/+6
| | | | | | | | assume the master will always be able to write updates to Mnesia.
* | Delay clearing of state in slavesEmile Joubert2013-08-061-14/+13
|/ | | | | until sender down notification is received from channel as well as GM in order to avoid messages being enqueued more than once
* s/VMware/GoPivotal/gSimon MacMullen2013-07-011-2/+2
|
* Update copyright 2013bug25343Emile Joubert2013-01-231-1/+1
|
* Rearrange order of args to gm:start_link/4 since it seems to make ↵bug25215Simon MacMullen2012-10-191-3/+2
| | | | invocations more compact. Curiously I did not need to rearrange the spec as it was already that way round :-)
* oopsTim Watson2012-10-171-2/+2
|
* do not couple gm with rabbit_miscTim Watson2012-10-171-1/+4
|
* one less place to equate mirrors with nodesMatthias Radestock2012-10-161-1/+1
|
* correct essay & comments regarding the 'delayed confirm' rationaleMatthias Radestock2012-10-121-12/+18
| | | | | | | | | | | Matthew has confirmed that the "we don't know the msg_seq_no until we receive the msg from the channel" reason is bogus. The msg_seq_no is allocated by the channel prior to routing and thus is the same across the master and all slaves. Hence the 'publish' via gm contains all the information we need to issue a confirm. Nevertheless we cannot actually issue the confirm until we've received the message from the channel. The essay now explains the real reason.
* Merge defaultbug25195Simon MacMullen2012-10-101-2/+1
|\
| * WIPSimon MacMullen2012-10-081-2/+1
| |
* | Remove this master_changed nonsense.Simon MacMullen2012-10-091-2/+0
|/
* consistencyMatthias Radestock2012-10-031-12/+12
|
* Start new slaves in response to gm deaths a bit later, to prevent deadlock. ↵Simon MacMullen2012-09-201-1/+2
| | | | Also remove {add,drop}_mirror/3 as not used, and don't export drop_mirror/2 as not used outside the module.
* updated the essay to explain how the sync status works nowFrancesco Mazzoli2012-09-131-19/+25
|
* Rename HA heartbeat when master changesEmile Joubert2012-07-111-1/+1
|
* Remove unnecessary HA heartbeatsEmile Joubert2012-07-101-11/+0
|
* Maybe better name?Simon MacMullen2012-06-261-1/+1
|
* OK, we do actually need a special way to determine the difference between:Simon MacMullen2012-06-251-1/+1
| | | | | | leave the group -> normal node shutting down -> shutdown queue deletion -> {shutdown, do_not_heal}
* normal -> leaving the ring, change topologySimon MacMullen2012-06-251-2/+2
| | | | | | shutdown -> ring shutting down, do not change topology gm_tests now pass again.
* Unused varbug24984Simon MacMullen2012-06-081-1/+1
|
* Stop mirror coordinator gen_server when deleting queueEmile Joubert2012-06-081-2/+6
|
* Prevent coordinator process leakageEmile Joubert2012-06-071-0/+2
|
* cosmeticMatthew Sackman2012-04-231-1/+1
|
* use pmon in queue_coordinatorMatthias Radestock2012-03-231-15/+6
|
* Update copyright 2012bug24606Emile Joubert2012-02-021-1/+1
|
* cosmetic: ensure_gm_heartbeat is not a gm callbackbug24715Matthias Radestock2012-01-311-3/+3
|
* Don't use timer:apply_interval/4.Simon MacMullen2012-01-301-2/+9
|
* Report queue slave events by name rather than by QPid.Simon MacMullen2011-08-111-1/+1
|
* ReworkingsMatthew Sackman2011-08-101-3/+4
|
* I think we can be more assertful here.Simon MacMullen2011-08-101-2/+2
|
* Identify the (possibly former if it changed) master pid in the ↵Simon MacMullen2011-08-101-2/+3
| | | | queue_mirror_deaths event.
* Various improvements mainly to detection of and reporting of deathMatthew Sackman2011-08-101-6/+3
|
* Merging default into bug24130Matthew Sackman2011-07-271-21/+48
|\
| * Merging default to bug24130Matthew Sackman2011-07-141-40/+1
| |\
| * | docsMatthew Sackman2011-06-261-3/+22
| | |
| * | Merge default into bug24130. Also add appropriate specs, and fix some bugsMatthew Sackman2011-06-261-0/+11
| |\ \
| * | | Master responds to length_requests with length broadcast; slaves can ↵Matthew Sackman2011-06-261-18/+19
| | | | | | | | | | | | | | | | determine their synchronised state correctly.
| * | | Slaves request length when they join.Matthew Sackman2011-06-261-0/+6
| | | |
* | | | Correct boilerplate for the HA modules which were started in 2010 but failed ↵Matthew Sackman2011-07-151-1/+1
| |_|/ |/| | | | | | | | to get updated to 2011.
* | | merge default into bug24216Matthias Radestock2011-06-291-40/+1
|\ \ \ | |_|/ |/| |
| * | s/run_backing_queue_async/run_backing_queueMatthias Radestock2011-06-251-1/+1
| | | | | | | | | | | | as well as removing some mroe tx remnants from mirror_queue_slave