-
-
Notifications
You must be signed in to change notification settings - Fork 754
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
HeartbeatInterceptor executed before IdleResourceInterceptor #1760
Comments
@freongrr It really depends on how you see it, |
I am having the same issue. What jfarcand says is logical but is there any way to achieve this without tampering with the framework? |
In my case, I update the MAX_INACTIVE attribute on the resource in my But then, shouldn't |
In either case, shouldn't heartbeat lunch an exception when sending data through a closed connection? |
@nicolasllk Lunch an exception to where? If you turn the log to |
@freongrr If you make the change in the code by moving the interceptor, does it help? If yes, pull request welcomed :-) |
Yes, the change is easy. I'll have to keep it running for a while to see how it works. |
@freongrr Any update? |
So, I could not test because the load balancer my company uses drops some websocket messages... |
@freongrr Any feedback? I'm tempted to switch the order, but I first want feedback from you. |
As I said above, I had to stop using websockets. The change worked during my limited testing, but I could not see how it worked in a real deployment. |
With #1877 , IdleResourceInterceptor will always be executed first. Closing as fixed, but in case you have time, please test :-) |
I'm using client heartbeats, but
IdleResourceInterceptor
keeps cancelling my resources.It turns out that
IdleResourceInterceptor#inspect()
is never called (and the "MAX_INACTIVE" property is never updated), becauseHeartbeatInterceptor
is invoked first, and it cancels the request from the client.How about bumping up
IdleResourceInterceptor
in the list of default interceptors inAtmosphereFramework
?And this is the order of interceptors when I hit
AsynchronousProcessor#action()
:The text was updated successfully, but these errors were encountered: