adds channel interceptor
improves interceptor priority handling
passes intercept_method() to intercept function
adds missing interceptor calls
Store some process identity in the process dictionary.
Store connection name in server writers (but not Erlang client ones)
Oops
A bit more abstraction, plus identities for heartbeater /
queue_collector / limiter.
Rename
Merge in default
Add queue_coordinator / queue_syncer / gm. Shift to getting gen_server2 to store the name in most cases.
merge default into bug25817
moves the expand_* functinos to happen before handle_method
Document
refactors channel interceptor
merge default into bug25817
handle interceptor exceptions at the channel level.
refactors intercept_method error handling
fixes handle_expand_shortcuts
basic.publish performance degrades if called with intercept_method

./runjava.sh com.rabbitmq.examples.PerfTest -y0 yields around 75k msgs/sec

without this change it yields 62k msgs/sec max

and that’s without any interceptor registered