-
Notifications
You must be signed in to change notification settings - Fork 6k
[Transport] Closing device sessions after tenant deletion #14553
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
base: rc
Are you sure you want to change the base?
Conversation
| if (sessionTenantId.equals(tenantId)) { | ||
| DeviceId sessionDeviceId = getDeviceId(md.getSessionInfo()); | ||
| transportCallbackExecutor.submit(() -> { | ||
| md.getListener().onDeviceDeleted(sessionDeviceId); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some handlers for onDeviceDeleted call checkLimits(...) which adds rate limits to rateLimitService cache.
Which was supposed to be cleaned by rateLimitService.remove(tenantId);
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Don't you see it passes onDeviceDeleted to executor? What is the point of moving partly async onDevicesDeleted before the rateLimitService.remove(..)?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, moving the onDevicesDeleted before the cleanup of partition service - will cause some messages to be pushed to cores and rule engines
… to avoid creating on new limit
|
Please make sure that NO unnecessary calls to partition service, transport service, rate limit service, etc. are made when handling the tenant deletion and closing device sessions. I would also like to see tests that verify that. |
…e tenant deletion
Pull Request description
Closing device sessions after tenant deletion
General checklist
Front-End feature checklist
Back-End feature checklist