SuperStream Consumer comes up deaf and never recovers until restart #656
Replies: 4 comments 12 replies
-
Could you share the server logs and a standalone Java project that reproduces the issue? Thanks. |
Beta Was this translation helpful? Give feedback.
-
@acogoluegnes We appreciate your response. See the attached file for the server logs and the standalone Java project which reproduces the way we initialize the client. We have not observed this failure with this sample running standalone outside of k8s, but it does present the issue running with k8s. Let us know if you need any more information. Once again, we appreciate the help. |
Beta Was this translation helpful? Give feedback.
-
@acogoluegnes the only thing in the server log that has attracted my attention is a couple of warnings:
There is also this warning that is likely coming from exchange federation, in which case it is very very unlikely to be relevant:
There are no errors logged of any kind. #630 is my best guess given a quick inspection of the logs of this unsupported (without a commercial license) version. |
Beta Was this translation helpful? Give feedback.
-
Having just updated the release notes of RabbitMQ @kjnilsson does the description here look familiar to what you've fixed in Osiris |
Beta Was this translation helpful? Give feedback.
-
Hi folks,
We are using RabbitMQ 3.13.7 server with Java Stream SDK 0.17.0.
We are hitting an intermittent issue where our
Consumer
starts "deaf": the stream exists, there are events being written to the stream from aProducer
, and Rabbit reports a stream-locator connection from the consumer but no associated stream-consumer connection.The
Consumer
never seems to recover once it comes up in this state. It will sit there indefinitely without change until we bounce it.As part of debugging we added an
Environment.streamExists()
check to hold off building theConsumer
until theEnvironment
reported the stream existing. We observed that even after the Environment reported the stream as existing, Rabbit client logging showed:We also registered a
subscriptionListener
when building theConsumer
. When theConsumer
starts clean we receive an almost immediate callback to thesubscriptionListener
. Not surprisingly, when theConsumer
starts deaf we never receive any callback.Final note: this is a
SuperStream
with a single partition (we wanted to start with aSuperStream
in case we ever needed to expand to multiple partitions in the future). I assume this is not a common configuration, or maybe it is not recommended.Any tips for additional debugging or things to try are much appreciated.
Beta Was this translation helpful? Give feedback.
All reactions