On Tue, Oct 29, 2019 at 11:54 AM jeremy <[email protected]> wrote:
> Hello Gordon, > > We debugged the dispatch router, and fell on the code which releases > undeliverable > messages( > https://github.com/apache/qpid-dispatch/blob/1.5.0/src/router_core/transfer.c#L869 > ). > > Check the comment on line 879. It states that if the distribution is > multicast, the credit will be replenished after the release. The issue that > introduced this behavior is: > https://issues.apache.org/jira/browse/DISPATCH-1012 > > Is the waypoint address (in from broker) using multicast distribution? The router treats multicast addresses like topics - you can publish to a multicast address (topic) regardless of the presence of consumers. That's the reason credit is being replenished even when no consumers are present. That's probably what's happening here - broker sends first queued message to the router, which attempts to send it to the topic. Since there are no consumers (and the message is sent from the broker as unsettled) the router cannot deliver it so it returns the released status. The released status causes the broker to redeliver the message. Repeat. > In fact, we need an urgent fix/workaround for this. Perhaps there is a > quick > workaround, awaiting the full analysis of this problem? > > As a work around can you avoid sending these multicast messages to the broker queue? In other words send them directly to the router instead of using a waypoint? > Thanks > > > > > ----- > Cheers, > Jeremy > -- > Sent from: > http://qpid.2158936.n2.nabble.com/Apache-Qpid-users-f2158936.html > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > > -- -K
