-
-
Notifications
You must be signed in to change notification settings - Fork 354
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
Readonly channels and TTL #256
Comments
Hello, I need to explore this further, but so far I would vote for "bug". So, avoid relying on this behavior. I'll have a deeper look as soon as I can. |
Hi Florimond, I have dug a little deeper, I followed 2 ideas of how this could have been implemented to see if this is a missing feature or bug in an existing implementation. The second point of inquiry was around permissions checking, we can see that this happens when a new subscription is received.
My conclusion is that there is no code that currently deals with a subscription expiring. I am interested in helping with this issue. I would suggest that we store the, expiry time when the subscription is created. A go routine loops over the subtrie and when an expired subscription is found: Interested in your thoughts, happy to be corrected. Cheers |
We'd need to think about this a bit more. Essentially I see couple of things that need to be done:
Not sure about closing the socket. We could send an error message down to the client which would tell that the subscription is expired and let the client do something about it. |
Is this an issue for all versions or just the latest commits? |
What is the implication on the client of receiving the unsubscribed message? They would need to re-authenticate and resubscribe. There is the potential for some lost messages during that time between the unsubscription and the resubscription. What durability guarantees can we provide during that time? What would we support for the in memory persistence with zero message retention? Which I think is the trickiest case? A suggestion is either I like the eviction on publish. No go routines needed. I do worry about lost messages though. |
Hi there,
If I have a readonly channel, the TTL does not appear to apply to it. Clients can read indefinitely.
Bug or a feature?
Cheers
The text was updated successfully, but these errors were encountered: