Ben Hood
74f7df23ae
Reinstated list_exchange_bindings/1
2008-10-10 23:09:25 +01:00
Ben Hood
e71f140b9f
Changed select for has_bindings into a continuation
2008-10-10 21:59:06 +01:00
Ben Hood
252aaf6657
Refactored all of the exchange delete functions
2008-10-10 21:51:39 +01:00
Hubert Plociniczak
04189c2322
Print error message when codegen cannot import json
2008-10-10 16:26:06 +01:00
Ben Hood
e7ec382c25
Default binding should be restored in exchange module
2008-10-10 16:18:06 +01:00
Emile Joubert
71fa0a4227
Moved and modified documentation
2008-10-10 09:11:22 +01:00
Ben Hood
3af3be50fe
Adjusted some of the exit reasons
2008-10-09 11:37:02 +01:00
Ben Hood
f1aee7cbec
Incorporated some QA remarks, added a test for this patch
2008-10-08 16:19:17 +01:00
Ben Hood
f83fd93870
Simplified has_bindings because it only needs to do simple select and count
2008-10-08 14:07:36 +01:00
Ben Hood
6e68301641
Brought forwards delete function into loop to avoid delete_object wildcard issue when it is fixed in OTP
2008-10-07 12:08:31 +01:00
Emile
764f0241e7
Run broker as windows service
2008-10-07 10:02:52 +01:00
Ben Hood
0ba0739aa3
Fixes for dialyzer
2008-10-06 18:43:34 +01:00
Ben Hood
6fba52a764
Merged default into 18776
2008-10-06 17:59:31 +01:00
Ben Hood
b8530a54f9
Lock demotion
2008-10-06 17:42:58 +01:00
Ben Hood
ca5b562728
Further refactorings
2008-10-06 17:29:23 +01:00
Ben Hood
6d8e269e87
Refactored call_with_exchange
2008-10-06 15:10:22 +01:00
Ben Hood
0f7b2f2b51
Factored out route deletion with reverse lookup
2008-10-06 14:58:19 +01:00
Ben Hood
a72844f0a3
Factored out re-entry condition
2008-10-06 11:48:22 +01:00
Ben Hood
982fface28
Fixed full table scan when deleting forwards routes
2008-10-06 10:53:45 +01:00
Ben Hood
9de5dbe9a9
Refactored deleting forwards bindings
2008-10-05 20:12:51 +01:00
Ben Hood
96e8235eea
Makes better use out of the reverse routes when deleting
2008-10-05 19:57:56 +01:00
Ben Hood
5e24c7bd6b
Minor refactoring of the continuation
2008-10-05 18:53:41 +01:00
Ben Hood
b003c245d5
Fixes for auto-delete exchanges
2008-10-05 18:36:17 +01:00
Hubert Plociniczak
5e6c6e50c0
merge bug19485 into default
2008-10-05 16:58:53 +01:00
Ben Hood
952e773c70
Merged bug19219 into default
2008-10-04 16:39:22 +01:00
Matthias Radestock
f3e3f768d2
beginnings of reacting to low memory conditions
...
configure memsup and hook in our own alarm handler
2008-10-04 16:20:09 +01:00
Ben Hood
86e2cc75e5
Implemented queue.unbind
2008-10-04 15:35:37 +01:00
Ben Hood
56c0656f03
Added test for queue.unbind
2008-10-04 15:33:39 +01:00
Ben Hood
e3c4c91087
Added queue.unbind method
2008-10-04 15:32:06 +01:00
Matthias Radestock
721e72d165
propagate channel/connection errors when in closing state
2008-10-03 13:47:01 +01:00
Matthias Radestock
2a0374c97a
merge bug18784
2008-10-01 19:46:17 +01:00
Matthias Radestock
f34405dcec
cosmetic refactoring
2008-10-01 12:39:26 +01:00
Ben Hood
9ce6c93cb9
Fix for not cleaning up durable auto_delete exchanges properly
2008-09-30 22:54:47 +01:00
Matthias Radestock
0587bccf2d
oops
2008-09-30 14:35:46 +01:00
Matthias Radestock
52e2ee3f13
modulate gen_server:call timeout when doing work in parallel
...
When we fire off lots of gen_server:calls in parallel, we may create
enough work for the VM to cause the calls to time out - since the
amount of work that can actually be done in parallel is finite.
The fix is to adjust the timeout based on the total workload.
Alternatively we could not have any timeout at all, but
that is bad Erlang style since a small error somewhere could result in
stuck processes.
I moved the parallelisation - and hence timeout modulation - from the
channel into the amqqueue module, changing the API in the process -
commit, rollback and notify_down now all operate on lists of
QPids (and I've renamed the functions to make that clear). The
alternative would have been to add Timeout params to these
three functions, but I reckon the API is cleaner this way,
particularly considering that rollback doesn't actually do a call - it
does a cast and hence doesn't require a timeout - so in the
alternative API we'd either have to expose that fact indirectly by not
having a Timeout param, or have a bogus Timeout param, neither of
which is particularly appealing.
I considered making the functions take sets instead of lists, since
that's what the channel code produces, plus sets have a more efficient
length operation. However, API-wise I reckon lists are nicer, plus it
means I can give a more precise type to dialyzer - sets would be
opaque and non-polymorphic.
2008-09-30 14:14:01 +01:00
Ben Hood
8f08a5b547
Simplications
2008-09-30 01:11:39 +01:00
Ben Hood
ee89d942a6
Made better use of pattern matching in mnesia:delete_object/1
2008-09-30 00:54:00 +01:00
Ben Hood
346a791c03
Fix for auto_delete exchanges
2008-09-30 00:14:41 +01:00
Ben Hood
63e6b878a7
Reverse routes and durable routes now get deleted
2008-09-29 21:31:21 +01:00
Matthias Radestock
f643854283
cosmetic changes and some minor refactoring
2008-09-28 22:19:29 +01:00
Ben Hood
c2cdd9d49d
Merged 19455 into default
2008-09-28 15:09:47 +01:00
Matthias Radestock
fa3ce836ae
disable Nagle
2008-09-28 11:37:28 +01:00
Ben Hood
358f4d29e0
Binned resource() type
2008-09-27 21:55:38 +01:00
Ben Hood
c24ce8446f
Removed e_m_t/2
2008-09-27 21:51:23 +01:00
Ben Hood
53a9e8798b
rabbit_exchange:{add,delete}_binding/1 should not be exported
2008-09-27 21:41:50 +01:00
Ben Hood
8036f65792
Truncated lines in this patch to 78
2008-09-27 21:35:11 +01:00
Ben Hood
bc3468dd98
Swapped position of exchange and queue in binding APIs
2008-09-27 21:22:06 +01:00
Ben Hood
437401df9f
Cosmetic fix
2008-09-27 21:13:23 +01:00
Ben Hood
87396f8ddb
Dialyzer fixes
2008-09-27 21:11:02 +01:00
Ben Hood
9bd58e8226
Make function match a bit tighter
2008-09-27 17:01:41 +01:00