summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Fix racy bug in tests as reported by Simon. Bug created in bug24037 I suspectMatthew Sackman2011-05-101-1/+1
|
* Merging bug23559 to defaultMatthew Sackman2011-05-102-94/+129
|\
| * track buffer size explicitly, resulting in a small performance improvementMatthias Radestock2011-05-101-20/+22
| | | | | | | | Also rename recv_length to recv_len for consistency and brevity.
| * refactor: extract commonality between tcp and ssl recvMatthias Radestock2011-05-101-13/+9
| | | | | | | | ...and add a guard, for consistency with other funs
| * optimise common case that buf contains a single binaryMatthias Radestock2011-04-261-2/+5
| | | | | | | | This turns out to improve performance *a lot*.
| * make ssl workMatthias Radestock2011-04-072-75/+93
| | | | | | | | | | | | | | ...and handle socket errors It turns out that for active sockets the messages sent by tcp and ssl sockets to the controlling process differ gratuitously.
| * get heartbeat monitor to pause when it shouldMatthias Radestock2011-04-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On 'default' we kick off another prim_inet:async_recv *before* handling the frame we've just received. This is done for performance reasons - essentially we are reading ahead - and leads to the following sequence of events: 1. receive memory alarm -> change state to 'blocking' 2. receive a 'publish' method frame 3. kick off another prim_inet:async_recv 4. handle frame, detecting that it is a 'publish' frame and thus changing the state to 'blocked' 5. receive the frame header for another frame (e.g. the message header, or could be something on another channel, or a heartbeat) 6. since the state is 'blocked' and we pause the heartbeat monitor and *don't* kick off another prim_inet:async_recv On this branch we don't read ahead since a) that would complicate the logic a fair bit, and b) we could end up draining a fair chunk of data from the socket, rather than just a frame header. As a result we need to make sure the heartbeat monitor gets paused as soon as we transition to the 'blocked' state.
| * tweakMatthias Radestock2011-04-071-1/+1
| |
| * merge default into bug23559Matthias Radestock2011-04-06138-7682/+10008
| |\
| * | experiment with uing {active,once} instead of prim_inet:async_recvMatthias Radestock2010-11-302-23/+39
| | |
* | | Merge bug20589 into defaultEmile Joubert2011-05-104-0/+183
|\ \ \
| * | | IndentationEmile Joubert2011-05-101-3/+3
| | | |
| * | | trace_exchange -> trace_exchangesSimon MacMullen2011-05-051-9/+13
| | | |
| * | | Merge from defaultSimon MacMullen2011-05-0513-230/+335
| |\ \ \
| * | | | Simplify tap_trace_in/out, don't make msg_to_table return a tuple, refactor, ↵Simon MacMullen2011-04-141-41/+33
| | | | | | | | | | | | | | | | | | | | cosmetics.
| * | | | Cosmetic.Simon MacMullen2011-04-121-4/+3
| | | | |
| * | | | Remove user and consumer tag.Simon MacMullen2011-04-122-31/+17
| | | | |
| * | | | Be more specific about what we catch.Simon MacMullen2011-04-121-7/+9
| | | | |
| * | | | Cosmetic.Simon MacMullen2011-04-111-5/+3
| | | | |
| * | | | Get rid of that "Bin" suffix, it was inconsistent and strings are generally ↵Simon MacMullen2011-04-111-20/+20
| | | | | | | | | | | | | | | | | | | | binaries in the broker anyway.
| * | | | Cosmetic.Simon MacMullen2011-04-111-4/+2
| | | | |
| * | | | Less magic.Simon MacMullen2011-04-111-4/+4
| | | | |
| * | | | Add user to trace messages.Simon MacMullen2011-04-112-17/+26
| | | | |
| * | | | Convert properties to table in a slightly smarter way. Also refer to the ↵Simon MacMullen2011-04-111-32/+19
| | | | | | | | | | | | | | | | | | | | result as "properties" not "headers" since that's what it is.
| * | | | Merge in defaultSimon MacMullen2011-04-114-0/+208
| |\ \ \ \
| | * | | | Remove delivery tag.Simon MacMullen2011-04-112-9/+5
| | | | | |
| | * | | | Specs.Simon MacMullen2011-04-081-1/+5
| | | | | |
| | * | | | Keys not key.Simon MacMullen2011-04-081-1/+1
| | | | | |
| | * | | | Port and rewrite the manpage changes.Simon MacMullen2011-04-071-0/+61
| | | | | |
| | * | | | Tracing has very little to do with rabbit_log, let's make it its own module.Simon MacMullen2011-04-073-102/+129
| | | | | |
| | * | | | Cosmetic.Simon MacMullen2011-04-071-10/+11
| | | | | |
| | * | | | Cosmetic.Simon MacMullen2011-04-071-21/+17
| | | | | |
| | * | | | This seems to work fine. FIXME denied!Simon MacMullen2011-04-071-1/+1
| | | | | |
| | * | | | Do loop detection earlier.Simon MacMullen2011-04-071-18/+15
| | | | | |
| | * | | | In a cluster it may be useful to know which node things happened on.Simon MacMullen2011-04-071-1/+2
| | | | | |
| | * | | | Don't expose queue message ID.Simon MacMullen2011-04-071-4/+3
| | | | | |
| | * | | | Make the generated messages somewhat more AMQP-ish by mapping payload to ↵Simon MacMullen2011-04-071-15/+13
| | | | | | | | | | | | | | | | | | | | | | | | payload and envelope to headers. Thus lose our new mimetype.
| | * | | | Move the inbound tap to before routing but after validation. Remove queues ↵Simon MacMullen2011-04-072-12/+4
| | | | | | | | | | | | | | | | | | | | | | | | from inbound tap.
| | * | | | Tested debitrot; works again.Simon MacMullen2011-04-071-8/+8
| | | | | |
| | * | | | Merge in default and untested debitrot.Simon MacMullen2011-04-053-0/+136
| | |\ \ \ \
| | | * | | | cosmeticMatthias Radestock2009-05-091-83/+76
| | | | | | |
| | | * | | | Move outbound tap to saner location; take advantage of extra info at that pointTony Garnock-Jones2009-05-093-12/+23
| | | | | | |
| | | * | | | merge default into bug20589Tony Garnock-Jones2009-05-0915-52/+374
| | | |\ \ \ \
| | | * | | | | Document rabbitmqctl changes in the podTony Garnock-Jones2009-04-111-0/+12
| | | | | | | |
| | | * | | | | Trace activity on a per-vhost basisTony Garnock-Jones2009-04-112-27/+37
| | | | | | | |
| | | * | | | | Switch to two-arg version of get_env for performance improvementTony Garnock-Jones2009-04-101-1/+1
| | | | | | | |
| | | * | | | | Generalize rabbitmqctl to set_env/get_env/unset_envTony Garnock-Jones2009-04-101-12/+14
| | | | | | | |
| | | * | | | | Use longstr instead of (nonstandard) binaryTony Garnock-Jones2009-04-091-1/+1
| | | | | | | |
| | | * | | | | Use AMQP table encoding for the data.Tony Garnock-Jones2009-04-091-25/+78
| | | | | | | |
| | | * | | | | rabbitmqctl tap controlTony Garnock-Jones2009-04-091-0/+16
| | | | | | | |