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
Timeout of fetch (pull mode) with no data in queue #809
Comments
@izarraga Could you give more information about how the stream is created? Also, looks like How would we go about to reproduce this? Have messages (how many) in the stream (again, please provide details about this stream) and have the message processing function delay for few seconds (?) and ack the message? |
now i have 2 seconds between log lines: 2021/09/01 17:05:58 [info] NATS_DBCODE_SLOW_PULL: sub.Fetch() err: nats: timeout If i make a restart, 7 seconds between lines: (during some minutes, perhaps 1-2 hours, I have not measured) 2021/09/01 17:07:33 [info] NATS_DBCODE_SLOW_PULL: sub.Fetch() err: nats: timeout func natsConnect() (nats.JetStreamContext) {
} |
Thanks, I will see if I can reproduce this. |
By the way, are you running the server in cluster mode (if so, how many) or standalone? |
In standalone. Compiled with golang 1.17 |
I can reproduce this, it seems that it happens when "Waiting Pulls" has reached the maximum:
|
Working on a fix asap and will update this ticket when the fix is in. Sorry for the inconvenience. |
This would happen when pull requests would have filled the waiting queue in the JetStream consumer and a 408 status was returned. Resolves #809 Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
I have used lib from the branch and now seems to works ok (3 hours working). Many thanks to you for the speed of creating the patch. |
This would happen when pull requests would have filled the waiting queue in the JetStream consumer and a 408 status was returned. Resolves #809 Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
@izarraga Thanks for checking! I am going to do a release v1.12.1 today, because this issue I think warrants it. |
After changing to server 2.4.0 and golang client 1.12 something strange happens with the timeouts of fetch in pull mode. At first it works correctly, but after a few minutes timeout goes to 0.
The text was updated successfully, but these errors were encountered: