summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* oopsSimon MacMullen2013-03-211-1/+1
|
* Merge the two can_sends and tidy up.Simon MacMullen2013-03-212-42/+25
|
* First attempt at merging these two bugs; this compiles at least.Simon MacMullen2013-03-209-50/+362
|\
| * Merge in defaultSimon MacMullen2013-03-206-53/+322
| |\
| | * merge default into bug23749Matthias Radestock2013-02-210-0/+0
| | |\
| | * | Well, that was embarassing.Simon MacMullen2013-02-211-1/+1
| | | |
| | * | simplifying refactorMatthias Radestock2013-02-211-12/+12
| | | |
| | * | Correct use of gb_trees APIs...Simon MacMullen2013-02-211-12/+6
| | | |
| | * | OopsSimon MacMullen2013-02-211-14/+7
| | | |
| | * | Use gb_trees rather than dict for performance.Simon MacMullen2013-02-211-15/+21
| | | |
| | * | Remove blocked_ctags, and a few knock-on simplifications.Simon MacMullen2013-02-212-39/+24
| | | |
| | * | simplify queue's basic_consume handlerMatthias Radestock2013-02-211-15/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - the call to update_ch_record in the is_ch_blocked(C1) == false branch was superfluos since the preceding update_consumer_count calls update_ch_record - all the checking whether the channel is blocked, and associated branching was just an optimisation. And not a particularly important one, since a) the "a new consumer comes along while its channel is blocked" case is hardly on the critical path, and b) exactly the same check is performed as part of run_message_queue (in deliver_msg_to_consumer/3). So get rid of it. - the is_empty & send_drained logic can be invoked earlier, which allows us to use the #cr we have rather than looking it up again. We can do this since the only case we need to catch here is that of a consumer coming along while the queue is empty already. If it becomes empty as part of run_message_queue then send_drained will be invoked in 'fetch'.
| | * | merge default into bug23749Matthias Radestock2013-02-201-1/+1
| | |\ \
| | * | | optimise possibly_unblockMatthias Radestock2013-02-201-15/+18
| | | | | | | | | | | | | | | | | | | | | | | | | when the channel is blocked there is no point going through the expensive consumer re-partitioning
| | * | | refactorMatthias Radestock2013-02-201-9/+6
| | | | | | | | | | | | | | | | | | | | | | | | | it's convenient for callers to have maybe_send_drained thread through the state
| | * | | cosmetic - reduce distance to 'default'Matthias Radestock2013-02-201-20/+17
| | | | |
| | * | | oopsMatthias Radestock2013-02-201-1/+1
| | | | |
| | * | | cosmeticMatthias Radestock2013-02-201-14/+14
| | | | | | | | | | | | | | | | | | | | move functions to a better place
| | * | | merge default into bug23749Matthias Radestock2013-02-201-2/+2
| | |\ \ \
| | * | | | get rid of maybe_send_drained_consMatthias Radestock2013-02-201-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | and optimise handle_cast/credit along the way
| | * | | | refactor possibly_unblockMatthias Radestock2013-02-201-18/+19
| | | | | |
| | * | | | introduce is_empty(State) helperMatthias Radestock2013-02-201-20/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and in the resulting refactor also remove a non-linear BQS access in handle_info/drop_expired.
| | * | | | cosmeticMatthias Radestock2013-02-201-5/+5
| | | | | |
| | * | | | eliminate non-linear BQS usageMatthias Radestock2013-02-201-1/+2
| | | | | |
| | * | | | cosmeticMatthias Radestock2013-02-201-9/+5
| | | | | |
| | * | | | Only send_drained if we have become empty...Simon MacMullen2013-02-201-9/+13
| | | | | |
| | * | | | AhemSimon MacMullen2013-02-201-2/+2
| | | | | |
| | * | | | Be more careful about where we send_drained from.Simon MacMullen2013-02-201-7/+25
| | | | | |
| | * | | | NeatnessSimon MacMullen2013-02-201-3/+2
| | | | | |
| | * | | | merge default into bug23749Matthias Radestock2013-02-2012-142/+204
| | |\ \ \ \
| | * \ \ \ \ merge default into bug23749Matthias Radestock2013-02-145-39/+44
| | |\ \ \ \ \
| | * | | | | | simplify & optimise maybe_send_drainedMatthias Radestock2013-02-121-8/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - use BQ:is_empty instead of BQ:len - make use of Stop flag
| | * | | | | | Clear drain flag when we run out of credit.Simon MacMullen2013-02-121-2/+5
| | | | | | | |
| | * | | | | | Remove tags from blocked_ctags when a consumer goes away.Simon MacMullen2013-02-121-2/+4
| | | | | | | |
| | * | | | | | Move blocked_ctags into the limiter.Simon MacMullen2013-02-122-26/+29
| | | | | | | |
| | * | | | | | s/q_state/credits/gSimon MacMullen2013-02-121-15/+15
| | | | | | | |
| | * | | | | | Move rabbit_channel:send_drained/2 invocations into the queue module, and ↵Simon MacMullen2013-02-123-58/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | make sure we send drained for all consumers in drain mode.
| | * | | | | | Merge defaultSimon MacMullen2013-02-126-53/+312
| | |\ \ \ \ \ \
| | | * | | | | | minor optimisationMatthias Radestock2013-02-111-2/+3
| | | | | | | | |
| | | * | | | | | some inlining and moving aroundMatthias Radestock2013-02-111-16/+11
| | | | | | | | |
| | | * | | | | | a spot of inliningMatthias Radestock2013-02-111-4/+1
| | | | | | | | |
| | | * | | | | | Avoid always going through with_exit_handler/2, since that's what the ↵Simon MacMullen2013-01-311-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | comment says!
| | | * | | | | | rabbit_limiter:initial_credit/6.Simon MacMullen2013-01-294-34/+48
| | | | | | | | |
| | | * | | | | | Derp.Simon MacMullen2013-01-291-1/+1
| | | | | | | | |
| | | * | | | | | Reduce distance to default.Simon MacMullen2013-01-291-2/+0
| | | | | | | | |
| | | * | | | | | Merge defaultSimon MacMullen2013-01-293-34/+35
| | | |\ \ \ \ \ \
| | | * | | | | | | Unify the various checks before sending, and make sure we don't drop the new ↵Simon MacMullen2013-01-292-40/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | limiter on the floor.
| | | * | | | | | | inform_limiter -> credit.Simon MacMullen2013-01-294-18/+18
| | | | | | | | | |
| | | * | | | | | | Remove knowledge of delivery-count from the broker.Simon MacMullen2013-01-292-28/+17
| | | | | | | | | |
| | | * | | | | | | Simplify: convert basic.credit_state to basic.credit_drained, which ↵Simon MacMullen2013-01-292-11/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | implicitly asserts that credit is 0, length 0 and drain is true, and tells you how much credit was discarded rather than the new delivery count (so we can soon remove all delivery count code from the broker).