Hi,

We upgraded to camel-spring-rabbitmq 4.6.0 but we see the very same problem as 
described bellow, Just to recap - we have dynamic toD() endpoint of 
SpringRabbitMQ producer (spring-rabbitmq). We send few exchanges and stop the 
route. Then we start the route and send another exchange, but 
SpringRabbitMQProducer says.

Failed delivery for (MessageId: 7691536141474904 on ExchangeId: 
7691536141474904). Exhausted after delivery attempt: 1 caught: 
java.util.concurrent.RejectedExecutionException

In SpringRabbitMQProducer

    public boolean process(Exchange exchange, AsyncCallback callback) {
        if (!this.isRunAllowed()) {// 113
            if (exchange.getException() == null) {// 114
                exchange.setException(new RejectedExecutionException());// 115
            }

It seems that the route start stop combined with dynamic routing does not work 
as expected.

Kind regards, Jan

> -----Original Message-----
> From: Claus Ibsen <claus.ib...@gmail.com>
> Sent: Thursday, July 4, 2024 10:05 AM
> To: users@camel.apache.org
> Subject: Re: Troubles with dynamic routing RabbiMQ endpoint and route 
> start/stop
>
> Hi
>
> camel-rabbitmq is the old component that is deprecated.
> You should use camel-spring-rabbitmq
>
> And you cannot mix old Camel v3 components with Camel v4
>
> On Thu, Jul 4, 2024 at 9:52 AM Jan Bares, WOOD & Co.
> <jan.ba...@wood.cz.invalid> wrote:
>
> > Hi,
> >
> > We have dynamic toD() endpoint of RabbitMQ producer (camel-rabbitmq). We
> > send few exchanges and stop the route. Then we start the route and send
> > another exchange, but RabbitMQProducer says:
> >
> > Failed delivery for (MessageId: 9269944780100 on ExchangeId:
> > 9269944780100). Exhausted after delivery attempt: 1 caught:
> > java.util.concurrent.RejectedExecutionException
> > java.util.concurrent.RejectedExecutionException: null
> >         at
> >
> org.apache.camel.component.rabbitmq.RabbitMQProducer.process(RabbitMQPro
> ducer.java:199)
> > ...
> >
> > This is because the RabbbitMQProducer is not running:
> >
> >     public boolean process(Exchange exchange, AsyncCallback callback) {
> >         if (!this.isRunAllowed()) {// 197
> >             if (exchange.getException() == null) {// 198
> >                 exchange.setException(new RejectedExecutionException());//
> > 199
> >             }
> >
> > I suspect this is a bug related to dynamic routing.
> >
> > SpringBoot 3.2.5
> > Camel 4.6.0
> > camel-rabbitmq 3.22.2
> >
> > Thank you for any pointers, Jan
> >
> > Jan Bares
> > Head of Calypso development | IT Development

Jan Bares
Head of Calypso development | IT Development

Phone: +420 222 096 457
Mobile: +420 776 333 676
Email: jan.ba...@wood.cz

WOOD & Company
Palladium, nám. Republiky 1079/1a, 110 00 Prague 1, Czech Republic | wood.cz





________________________________
DISCLAIMER
WOOD & Company Financial Services, a.s. and its branches are authorized and 
regulated by the CNB as Home State regulator and in Poland by the KNF, in 
Slovakia by the NBS, in Italy by the CONSOB and in the UK by the FCA as Host 
State regulators. For further information about WOOD & Co., its investment 
services, financial instruments and associated risks, safeguard client assets 
(incl. compensation schemes) and contractual relationship please see our 
website at www.wood.com<http://www.wood.com/> under section Corporate 
Governance. Unless otherwise stated, this transmission is neither an offer nor 
the solicitation of an offer to sell or purchase any investment. All estimates, 
opinions and other information contained herein are subject to change without 
notice and are provided in good faith but without legal responsibility or 
liability. Opinion may be personal to the author and may not reflect the 
opinions of WOOD & Co. Communications from sales persons, sales traders or 
traders should not be regarded as investment research and may contain opinions 
or trading ideas which are different from WOOD & Co. investment research 
opinions. This e-mail and any attachments are confidential and may be 
privileged or otherwise protected from disclosure. If you are not a named 
addressee you must not use, disclose, distribute, copy, print or rely on this 
e-mail and any of its attachments. Please notify the sender that you have 
received this email by mistake by replying to the email, and then delete the 
email and any copies of it. Although WOOD & Co. routinely screens e-mails for 
viruses, addressees should scan this e-mail and any attachments for viruses. 
WOOD & Co. makes no representation or warranty as to the absence of viruses in 
this e-mail or any attachments. Please note that to ensure regulatory 
compliance and for the protection of our clients and business, we may monitor 
and read e-mails sent to and from our server(s).

Reply via email to