You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Rhuan Rocha (Jira)" <ji...@apache.org> on 2024/03/21 00:36:00 UTC

[jira] [Created] (CAMEL-20590) Delay to execute timeout to Camel RabbitMQ (InOut)

Rhuan Rocha created CAMEL-20590:
-----------------------------------

             Summary: Delay to execute timeout to Camel RabbitMQ (InOut)
                 Key: CAMEL-20590
                 URL: https://issues.apache.org/jira/browse/CAMEL-20590
             Project: Camel
          Issue Type: Improvement
          Components: camel-rabbitmq
    Affects Versions: 3.21.0, 3.20.0
            Reporter: Rhuan Rocha


I'm utilizing the camel-rabbitmq component to send messages to RabbitMQ with a specified timeout. However, I've observed that the timeout response is delayed. Upon debugging the Camel code ([https://github.com/apache/camel/blob/camel-3.21.x/components/camel-rabbitmq/src/main/java/org/apache/camel/component/rabbitmq/reply/ReplyManagerSupport.java#L217]), I discovered that this delay is caused by a specific line of code that performs a {{get}} operation on a map. This map internally uses a {{{}ReentrantLock{}}}, which is contributing to the delay. I think it is not a bug, but I think it can be improved. I propose developing a 'contains' method that operates without the need for locking. I'm trying to reproduce it outside my application and inside a simple POC.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)