-
Notifications
You must be signed in to change notification settings - Fork 173
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
AMQP sending to RabbitMQ with 1.0 Plugin doesn't respect durable setting #174
Comments
Looking at: https://stackoverflow.com/questions/51385700/inequivalent-arg-durable-for-queue, did you try to:
|
The Queue gets created from reactive-messaging-amqp, I don't create it myself.
Like I said, non-durable queues are working fine. |
@BiggA94 I got a response from @gemmelr:
So I would need to try it to check what can go wrong. |
I am running into the same issue when using RabbitMQ as broker. However I do see some strange behavior. Started with a RabbitMQ without any queues yet. My Quarkus application uses 2 queues. One for reading and one for writing. Both are configured in |
The AMQP connector is for AMQP 1.0, not for RabbitMQ. |
I understand, but RabbitMQ has an AMQP 1.0 plugin and things actually work except for the durability issue. |
Yes, but it does not seem to handle everything. See this comment: #174 (comment) |
I experience this problem with Quarkus. I have a service that is pushing messages into the queue and one that consumes the messages. Both have equivalent
The only difference is that on service has the configuration for When I now start the In contrast, when I start the The result is that the respective other service cannot connect to the queue since the durable setting does not match. From this experience, I guess that the durable setting is somehow not respected when set for an outgoing connection and falls back to the default Is there another workaround than just setting the queues to non-durable for now? |
The documentation does not tell us what |
I have rewritten the documentation. I will make sure it’s clear. It actually depends if you are receiving or sending. On the reception side, it means durable subscription. On the sending side, it’s about message durability.
…On 30 Mar 2020 at 19:17 +0200, Leon Kiefer ***@***.***>, wrote:
The documentation does not tell us what durable mean, it could mean, it's a durable queue or the messages send are durable or it's a durable subscription. From the observed behavior it looks to me that it mean durable subscription, because a durable subscription require a durable queue. This also means, durable has no meaning for outgoing channels.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
I used the |
In this case, I don’t believe it applied durability. I guess it uses your broker config.
…On 30 Mar 2020 at 19:36 +0200, Leon Kiefer ***@***.***>, wrote:
I used the durable option for sending to an activemq artemis broker, but the messages in the queue have the durable attribute set to false. I basically used the config example from https://smallrye.io/smallrye-reactive-messaging/
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
Closing - out of date. |
Hi,
I'm trying to use the reactive-messaging-amqp library in order to send AMQP messages via RabbitMQ. I use the AMQP 1.0 plugin for rabbit.
The Application succeeds to connect and generate the Queue.
But when it tries to send a Message to this queue, I can see the following error message in the logs of Rabbit:
{'v1_0.error',{symbol,<<"amqp:precondition-failed">>},{utf8,<<"PRECONDITION_FAILED - inequivalent arg 'durable' for queue 'prices' in vhost '/': received 'true' but current is 'false'">>},undefined}
This prevents me from sending Messages to durable queues (non-durable queues are working fine).
I have created a sample project using Quarkus:
Quarkus-Native-Test
The PriceGenerator contains the message generator.
Used Java version: openjdk 11.0.2, windows
The text was updated successfully, but these errors were encountered: