Looks like there's a problem when attempting to copy a retained MQTT
message into a client's new subscription. Do you have a way to reproduce
this? If so, could you share it?


Justin

On Thu, Oct 5, 2023 at 2:45 PM Shields, Paul Michael <paul.shie...@hpe.com>
wrote:

> Running Artemis 2.28.0 in HA cluster active:stanby pair under Kubernetes.
> System will run for a period of time and then we will start seeing these
> messages in the log. What does this mean?
>
>
>
> 2023-10-04 20:50:53,098 ERROR
> [org.apache.activemq.artemis.core.protocol.mqtt] AMQ834002: Error
> processing control packet:
> MqttSubscribeMessage[fixedHeader=MqttFixedHeader[messageType=SUBSCRIBE,
> isDup=false, qosLevel=AT_LEAST_ONCE, isRetain=false, remainingLength=110],
> variableHeader=MqttMessageIdAndPropertiesVariableHeader[messageId=1,
> properties=io.netty.handler.codec.mqtt.MqttProperties@79b1f918<mailto:
> properties=io.netty.handler.codec.mqtt.MqttProperties@79b1f918>],
> payload=MqttSubscribePayload[MqttTopicSubscription[topicFilter=trusted/+/nfs/dropped_messages/myhost1:22,
> option=SubscriptionOption[qos=AT_MOST_ONCE, noLocal=false,
> retainAsPublished=false, retainHandling=SEND_AT_SUBSCRIBE]],
> MqttTopicSubscription[topicFilter=trusted/+/nfs/server/state,
> option=SubscriptionOption[qos=AT_MOST_ONCE, noLocal=false,
> retainAsPublished=false, retainHandling=SEND_AT_SUBSCRIBE]],
> MqttTopicSubscription[topicFilter=trusted/+/nfs/client/state,
> option=SubscriptionOption[qos=AT_MOST_ONCE, noLocal=false,
> retainAsPublished=false, retainHandling=SEND_AT_SUBSCRIBE]]]]
>
> java.util.NoSuchElementException: null
>
>         at
> org.apache.activemq.artemis.utils.collections.LinkedListImpl$Iterator.next(LinkedListImpl.java:581)
> ~[artemis-commons-2.28.0.jar:?]
>
>         at
> org.apache.activemq.artemis.utils.collections.PriorityLinkedListImpl$PriorityLinkedListIterator.next(PriorityLinkedListImpl.java:287)
> ~[artemis-commons-2.28.0.jar:?]
>
>         at
> org.apache.activemq.artemis.core.server.impl.QueueImpl$SynchronizedIterator.next(QueueImpl.java:4367)
> ~[artemis-server-2.28.0.jar:2.28.0]
>
>         at
> org.apache.activemq.artemis.core.server.impl.QueueImpl$SynchronizedIterator.next(QueueImpl.java:4335)
> ~[artemis-server-2.28.0.jar:2.28.0]
>
>         at
> org.apache.activemq.artemis.core.protocol.mqtt.MQTTRetainMessageManager.addRetainedMessagesToQueue(MQTTRetainMessageManager.java:79)
> ~[artemis-mqtt-protocol-2.28.0.jar:2.28.0]
>
>         at
> org.apache.activemq.artemis.core.protocol.mqtt.MQTTSubscriptionManager.addSubscription(MQTTSubscriptionManager.java:127)
> ~[artemis-mqtt-protocol-2.28.0.jar:2.28.0]
>
>         at
> org.apache.activemq.artemis.core.protocol.mqtt.MQTTSubscriptionManager.addSubscriptions(MQTTSubscriptionManager.java:323)
> ~[artemis-mqtt-protocol-2.28.0.jar:2.28.0]
>
>         at
> org.apache.activemq.artemis.core.protocol.mqtt.MQTTProtocolHandler.handleSubscribe(MQTTProtocolHandler.java:377)
> ~[artemis-mqtt-protocol-2.28.0.jar:2.28.0]
>
>         at
> org.apache.activemq.artemis.core.protocol.mqtt.MQTTProtocolHandler.act(MQTTProtocolHandler.java:176)
> ~[artemis-mqtt-protocol-2.28.0.jar:2.28.0]
>
>         at
> org.apache.activemq.artemis.utils.actors.Actor.doTask(Actor.java:32)
> ~[artemis-commons-2.28.0.jar:?]
>
>         at
> org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68)
> ~[artemis-commons-2.28.0.jar:?]
>
>         at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
> ~[?:?]
>
>         at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
> ~[?:?]
>
>         at
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
> ~[artemis-commons-2.28.0.jar:?]
>
> Thanks,
> Paul Shields
>
>

Reply via email to