Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
When implementing https://github.com/apache/qpid-dispatch/pull/111 I stumbled across an issue with an autoLink or linkRoute only being able to refer to more than 1 connection, which I assumed would originaly cause an assert in route_control.c:350 to trigger when I configured an autoLink to trigger on a containerId and use the same container id when sharding a queue.
Since the assert didn't trigger, I assumed that I must have misread the code, but nontheless as part of the patch I made it possible for a linkRoute/autoLink to be associated with multiple connections.
Recently, I have seen some router crashes when scaling up and down queues in EnMasse, and I just figured that the reason for this assert not triggering is that it is disabled in the RelWithDebInfo configuration.
If built without optimizations (Debug), I'm able to trigger the issue with the configuration in http://people.redhat.com/~ulilleen/bugs/routerconn/
To trigger, I startup the router and broker as so:
qdrouterd -c router_incoming.conf
export MESSAGING_SERVICE_HOST=localhost
export MESSAGING_SERVICE_PORT_INTERNAL=55673
export QUEUE_NAME=myqueue
export CONTAINER_ID=myqueue
./br/bin/simplebroker &
./br/bin/simplebroker
I have extracted the patch from DISPATCH-476 and will create a PR with it.
Attachments
Issue Links
- links to