-
Notifications
You must be signed in to change notification settings - Fork 5.3k
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
org.redisson.tomcat.RedissonSessionManager renders tomcat8 useless if Redis server is down #1651
Comments
Is this feature planned to be implemented? It is very important to us as well. Any feedback on this would be greatly appreciated. |
Yes, please. Some kind of graceful handling of temporary redis downtime would be appreciated(maybe fallback to some other session management implementation?) . When redis goes down or connectivity with it is interrupted whole tomcat blows up serving nasty error pages which cannot be even intercepted. e.g. Users are facing similar problems in other cases e.g. https://stackoverflow.com/questions/62127697/tomcat-not-handling-500-internal-server-code-thrown-by-external-service |
Exception thrown if Redis-server is down, causes apps to stop working.
This might be an intended behavior, but the presence of the centralized session backup is not mission critical for our system (only used for failover). But using this session manager will actually introduce a new critical error to our system, when/if the Redis server goes down.
A flag/setting where communication errors with Redis would be logged instead of causing a "crash" would be highly appreciated.
Expected/Wanted behavior
Tomcat uses the local session to service the request and ignores any store/find session issues related to communication with Redis-server.
Actual behavior
An Exception is thrown.
Steps to reproduce or test case
Load a page on tomcat where a session is created and attribute is added to it. Turn of Redis-server and reload the page.
Redis version
3.0.6
Redisson version
3.7.5
Redisson configuration
Manager is set up with readMode="MEMORY" and updateMode="DEFAULT"
singleServerConfig:
address: "redis://localhost:6379"
subscriptionConnectionMinimumIdleSize: 1
subscriptionConnectionPoolSize: 50
connectionMinimumIdleSize: 32
connectionPoolSize: 64
database: 0
dnsMonitoringInterval: 5000
transportMode: "EPOLL"
useLinuxNativeEpoll: true
The text was updated successfully, but these errors were encountered: