You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
What Operating System are you using (both controller, and any agents involved in the problem)?
Default openshift/jenkins image (RHEL8-based) on OCP 4.13.
Reproduction steps
Set up the plugin for Fedora's RabbitMQ instance, connected to public endpoint. Leave queue field blank.
Set up job with JMS trigger with queue field left blank.
Expected Results
The plugin can't create its queue because the name it chose contains the reserved prefix 'amq.*':
2023-09-22 17:01:54 SEVERE com.redhat.jenkins.plugins.ci.messaging.RabbitMQMessagingWorker subscribe Eexception raised while subscribing job 'jlebon-tmp', retrying in 1 minutes.
java.io.IOException
at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:129)
at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:125)
at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:147)
at com.rabbitmq.client.impl.ChannelN.queueDeclare(ChannelN.java:968)
at com.rabbitmq.client.impl.recovery.AutorecoveringChannel.queueDeclare(AutorecoveringChannel.java:333)
at com.redhat.jenkins.plugins.ci.messaging.RabbitMQMessagingWorker.subscribe(RabbitMQMessagingWorker.java:85)
at com.redhat.jenkins.plugins.ci.messaging.JMSMessagingWorker.subscribe(JMSMessagingWorker.java:49)
at com.redhat.jenkins.plugins.ci.messaging.RabbitMQMessagingWorker.receive(RabbitMQMessagingWorker.java:159)
at com.redhat.jenkins.plugins.ci.threads.CITriggerThread.run(CITriggerThread.java:90)
Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=403, reply-text=ACCESS_REFUSED - queue name 'amq.gen-ZAVSaGe4XPv84jWbO7upYQ' contains reserved prefix 'amq.*', class-id=50, method-id=10)
at com.rabbitmq.utility.ValueOrException.getValue(ValueOrException.java:66)
at com.rabbitmq.utility.BlockingValueOrException.uninterruptibleGetValue(BlockingValueOrException.java:36)
at com.rabbitmq.client.impl.AMQChannel$BlockingRpcContinuation.getReply(AMQChannel.java:502)
at com.rabbitmq.client.impl.AMQChannel.privateRpc(AMQChannel.java:293)
at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:141)
... 6 more
Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=403, reply-text=ACCESS_REFUSED - queue name 'amq.gen-ZAVSaGe4XPv84jWbO7upYQ' contains reserved prefix 'amq.*', class-id=50, method-id=10)
at com.rabbitmq.client.impl.ChannelN.asyncShutdown(ChannelN.java:522)
at com.rabbitmq.client.impl.ChannelN.processAsync(ChannelN.java:346)
at com.rabbitmq.client.impl.AMQChannel.handleCompleteInboundCommand(AMQChannel.java:182)
at com.rabbitmq.client.impl.AMQChannel.handleFrame(AMQChannel.java:114)
at com.rabbitmq.client.impl.AMQConnection.readFrame(AMQConnection.java:672)
at com.rabbitmq.client.impl.AMQConnection.access$300(AMQConnection.java:48)
at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:599)
at java.base/java.lang.Thread.run(Thread.java:829)
Actual Results
The temporary queue name chosen Just Works.
Anything else?
This isn't hard to work around (just come up with a valid queue name), but it adds friction (e.g. it means unnecessarily hardcoding random queue names).
To clarify, though the RabbitMQ support isn't designed to exclusively support Fedora's broker, if any random queue name is valid then it seems harmless to use a UUID to conform to Fedora's requirements.
Jenkins and plugins versions report
Environment
What Operating System are you using (both controller, and any agents involved in the problem)?
Default openshift/jenkins image (RHEL8-based) on OCP 4.13.
Reproduction steps
Expected Results
The plugin can't create its queue because the name it chose contains the reserved prefix 'amq.*':
Actual Results
The temporary queue name chosen Just Works.
Anything else?
This isn't hard to work around (just come up with a valid queue name), but it adds friction (e.g. it means unnecessarily hardcoding random queue names).
According to the Fedora Messaging docs, the queue name should be a UUID: https://github.com/fedora-infra/fedora-messaging/blob/8163f0bcb290c751b04794e19479c48616e92eb1/configs/fedora.toml#L28
The text was updated successfully, but these errors were encountered: