| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Remove erroneous loss of state. Whilst this now can cause a memory leak, it ↵ | Matthew Sackman | 2011-03-10 | 1 | -8/+2 |
| | | | | | only affects the master, the dict is not particularly rich, and it'll only be left with entries for dead channels (most likely channels that were on the old master). Also, we might very well be able to address this through other means | ||||
| * | discovered another entire class of interleaving opportunities I've not ↵ | Matthew Sackman | 2011-03-10 | 2 | -16/+39 |
| | | | | | considered. Fortunately, the fix turned out to be simple. ish. | ||||
| * | Make creation of slaves synchronous. This means we are guaranteed on ↵ | Matthew Sackman | 2011-03-10 | 1 | -4/+4 |
| | | | | | queue.declare to have all slaves up by the time of the _ok | ||||
| * | It was right before... | Matthew Sackman | 2011-03-10 | 1 | -4/+4 |
| | | |||||
| * | or that might be a bit better... | Matthew Sackman | 2011-03-09 | 2 | -11/+9 |
| | | |||||
| * | There's a chance that might be it | Matthew Sackman | 2011-03-09 | 1 | -9/+15 |
| | | |||||
| * | Further improvement of documentation | Matthew Sackman | 2011-03-09 | 1 | -5/+33 |
| | | |||||
| * | Correct documentation. Code is still wrong though | Matthew Sackman | 2011-03-09 | 1 | -17/+29 |
| | | |||||
| * | fix | Matthew Sackman | 2011-03-09 | 1 | -4/+5 |
| | | |||||
| * | Sort out and clean the validate_message stuff. It compiles again now... | Matthew Sackman | 2011-03-09 | 3 | -24/+26 |
| | | |||||
| * | Merge default to bug23554, and then a bit | Matthew Sackman | 2011-03-09 | 17 | -187/+1449 |
| |\ | |||||
| | * | just stashing this whilst I fix something else | Matthew Sackman | 2011-03-09 | 2 | -58/+56 |
| | | | |||||
| | * | Just some more notes | Matthew Sackman | 2011-03-08 | 1 | -2/+13 |
| | | | |||||
| | * | Hmm, I'd forgotten than deliver_immediately == false => the msg _isn't_ enqueued | Matthew Sackman | 2011-03-08 | 1 | -10/+9 |
| | | | |||||
| | * | oops | Matthew Sackman | 2011-03-08 | 2 | -3/+3 |
| | | | |||||
| | * | add BQ:validate_message | Matthew Sackman | 2011-03-08 | 6 | -30/+71 |
| | | | |||||
| | * | Merging default into bug23554 | Matthew Sackman | 2011-03-08 | 17 | -162/+1372 |
| | |\ | |||||
| | | * | It's very substantially wrong. | Matthew Sackman | 2011-03-02 | 3 | -38/+75 |
| | | | | |||||
| | | * | Remove erroneous documentation | Matthew Sackman | 2011-03-02 | 1 | -34/+0 |
| | | | | |||||
| | | * | Fixed confirms in HA queues. Broke slave promotion. Will fix | Matthew Sackman | 2011-03-02 | 1 | -64/+104 |
| | | | | |||||
| | | * | confirms still don't work... but it needs sleep to fix this. | Matthew Sackman | 2011-02-28 | 1 | -7/+6 |
| | | | | |||||
| | | * | Large amounts of debitrotting due to changes to confirms api and such like. ↵ | Matthew Sackman | 2011-02-28 | 2 | -27/+92 |
| | | | | | | | | | | | | | Sadly mirrored confirms aren't working again yet... not really sure why | ||||
| | | * | Removing gm_test from bug23554 which has in bug23727 become gm_soak_test | Matthew Sackman | 2011-02-28 | 1 | -126/+0 |
| | | | | |||||
| | | * | Merging default into bug23554 | Matthew Sackman | 2011-02-28 | 31 | -296/+736 |
| | | |\ | |||||
| | | * \ | Merging bug23727 to bug23554 | Matthew Sackman | 2011-02-23 | 39 | -1081/+803 |
| | | |\ \ | |||||
| | | * \ \ | Merging bug23727 to bug23554 | Matthew Sackman | 2011-02-12 | 52 | -504/+2739 |
| | | |\ \ \ | |||||
| | | | * \ \ | Merging bug23829 to bug23554 | Matthew Sackman | 2011-02-12 | 20 | -162/+2728 |
| | | | |\ \ \ | |||||
| | | | | * \ \ | Merging default into bug23554 | Matthew Sackman | 2011-02-12 | 21 | -162/+2744 |
| | | | | |\ \ \ | |||||
| | | | | | * \ \ | Merging bug23727 into bug23554 | Matthew Sackman | 2011-01-21 | 4 | -7/+10 |
| | | | | | |\ \ \ | |||||
| | | | | | * | | | | And the result of misc:rs is a string, so format it as such | Matthew Sackman | 2011-01-20 | 2 | -5/+5 |
| | | | | | | | | | | |||||
| | | | | | * | | | | Correct formatting of resources in log messages | Matthew Sackman | 2011-01-20 | 2 | -10/+10 |
| | | | | | | | | | | |||||
| | | | | | * | | | | Merging default into bug23554 (epic debitrot) | Matthew Sackman | 2011-01-20 | 21 | -161/+2743 |
| | | | | | |\ \ \ \ | |||||
| | | | | | | * \ \ \ | Merging default into bug23554 | Matthew Sackman | 2010-12-21 | 21 | -119/+2694 |
| | | | | | | |\ \ \ \ | |||||
| | | | | | | | * \ \ \ | Merging default into bug23554 | Matthew Sackman | 2010-12-21 | 21 | -119/+2694 |
| | | | | | | | |\ \ \ \ | |||||
| | | | | | | | | * | | | | Make the addition of slave nodes more robust. This is especially important ↵ | Matthew Sackman | 2010-12-21 | 1 | -3/+11 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | for recovery of durable queues | ||||
| | | | | | | | | * | | | | idiot | Matthew Sackman | 2010-12-21 | 1 | -1/+1 |
| | | | | | | | | | | | | | |||||
| | | | | | | | | * | | | | Use amqqueue:store_queue/1 so that we modify durable queues durably | Matthew Sackman | 2010-12-21 | 2 | -1/+2 |
| | | | | | | | | | | | | | |||||
| | | | | | | | | * | | | | Correct all manner of crazy wrongness with ↵ | Matthew Sackman | 2010-12-21 | 7 | -60/+84 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | maybe_run_queue_via_backing_queue. The principle problem is that the state with which the function is to be run is dependent on the caller. Sometimes it's the 'top level' BQ state (eg invocations called by amqqueue_process). Sometimes it's the 'bottom level' state (eg invocations called by vq or qi or msg_store). We didn't used to have multiple layers, but now we do. Consequently, the invocation must indicate 'where' the fun is to be run. The clearest explanation is in master:invoke/3 | ||||
| | | | | | | | | * | | | | Merging default into bug 23554 | Matthew Sackman | 2010-12-21 | 21 | -70/+2612 |
| | | | | | | | | |\ \ \ \ | |||||
| | | | | | | | | | * | | | | Remove R14-ism. Also, cute feature - if you specify no nodes by name, you ↵ | Matthew Sackman | 2010-12-20 | 1 | -2/+6 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mean all known nodes | ||||
| | | | | | | | | | * | | | | Give in and have the master put the pub msgs themselves on the gm. Avoiding ↵ | Matthew Sackman | 2010-12-20 | 2 | -149/+159 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this proves far too complex in all the failure cases (the worst being when the publishing node crashes - the master can receive the msg, but not the slaves. Worse, because of complexities like delegates, it's not even straightforward to monitor the publishers in order to be sure we're not going to receive more messages from them). We continue to have all msgs directly routed to all queues. Yes, this means that normally every slave receives every message twice, but this is genuinely the simplest and most secure route and protects against failures the best. | ||||
| | | | | | | | | | * | | | | Revert the previous changeset as I've decided to solve this differently | Matthew Sackman | 2010-12-20 | 2 | -135/+53 |
| | | | | | | | | | | | | | | |||||
| | | | | | | | | | * | | | | Right, well the fake handling code in master is fine. The fake handling code ↵ | Matthew Sackman | 2010-12-20 | 2 | -53/+135 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in slave is utterly wrong. However, I need to sleep | ||||
| | | | | | | | | | * | | | | When you send a msg to another node, if the local node doesn't already have ↵ | Matthew Sackman | 2010-12-19 | 1 | -1/+5 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a connection to the destination node, it has to contact epmd and try and resolve the remote node. This takes time. Thus, in the event of a distributed gm group, it's very important that we record asap when a member dies as that member might be our downstream, to which we're sending, and it might be on another node. Thus promote the DOWN messages. Because of the inherent races going on, gm is built to cope with this anyway. This has the nice benefit that promotion of slaves to master in the event of failure of master is now pretty much instantaneous | ||||
| | | | | | | | | | * | | | | Fixed a bug caused by revision 454fbb9127bd in rabbit-ha from where gm.erl ↵ | Matthew Sackman | 2010-12-19 | 2 | -62/+66 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | came; Make gm_tests more robust; Avoid creating endless funs all the time for every message (substantial performance gain). Abstract use of dicts - expected use case is relatively small groups, thus orddict would normally be more appropriate | ||||
| | | | | | | | | | * | | | | Merging default into bug23554 | Matthew Sackman | 2010-12-17 | 1 | -1/+1 |
| | | | | | | | | | |\ \ \ \ | |||||
| | | | | | | | | | * | | | | | Ensure that promoted slaves monitor the queue's exclusive owner | Matthew Sackman | 2010-12-17 | 1 | -1/+6 |
| | | | | | | | | | | | | | | | |||||
| | | | | | | | | | * | | | | | Fix a race condition that can occur on queue deletion. Also change boot ↵ | Matthew Sackman | 2010-12-17 | 4 | -25/+34 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | order to make sure the msg_stores are started before us (and thus stopped after us) | ||||
| | | | | | | | | | * | | | | | Accidental unification going on of two things named Q; fix a bug which led ↵ | Matthew Sackman | 2010-12-17 | 1 | -8/+12 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to repeated calls to BQ:delete_and_terminate (which turns out not to be idempotent) | ||||
| | | | | | | | | | * | | | | | That might just be enough to support confirms | Matthew Sackman | 2010-12-17 | 1 | -16/+48 |
| | | | | | | | | | | | | | | | |||||
