Comments (4)
Hi, @wash1983. I did not understand what you are asking here, could you please re-elaborate the question?
from spring-session.
In the context of spring session date redis, there is a problem where the sessions are not being cleared when the application server crashes, leading to an accumulation of the index which causes delays when using sessionManagement to restrict the number of user login sessions. My question is, is it possible to add validation in theorg.springframework.session.data.redis.RedisIndexedSessionRepository.findByIndexNameAndIndexValue(String, String)
method so that we can clean up the sessionId in PRINCIPAL_NAME_INDEX_NAME for the expired sessions? This way, even if the PRINCIPAL_NAME_INDEX_NAME is not cleaned up immediately when a session expires, it can still be cleaned up when accessed.
add code }else{
this.sessionRedisOperations.boundSetOps(principalKey).remove(session.getId());
}
from spring-session.
I don't believe that we should apply that workaround because the problem relies on the mechanisms used to store the expirations and clean them. I'm working on a new Redis indexed implementation for WebFlux and there is a new mechanism that seems promising. We can then extend the current implementation to support specifying a different expiration policy.
from spring-session.
As a workaround, you can get all the keys matching the pattern spring:session:expirations:*
, where the last part is the timestamp rounded up to the nearest minute. Then you can filter all keys with timestamp < last minute and check if the key inside the Set exists to trigger the expired event.
from spring-session.
Related Issues (20)
- Application Does Not Start When Multiple `TransactionManager` Bean Exist
- Application Does Not Start When Multiple `TransactionManager` Bean Exist
- Add JDBC to Configurations section
- Store type property no longer exists
- Setup Auto Merge Forward Dependabot Commits Workflows HOT 1
- Store type property no longer exists
- Store type property no longer exists
- expiredSessionStrategy does not get invoked when spring session expires HOT 1
- Fix failing tests
- Fix failing tests
- Fix failing tests HOT 1
- Update to Spring Security 6.3.0-M3
- An "IllegalStateException: Session was invalidated" - exception is thrown after session was already invalidated
- spring security + form login + redis session storage -> keep coming out anonymous User HOT 3
- Consider Sorted Set Expiration Policy in RedisIndexedHttpSession HOT 1
- maxInactiveInterval from JdkMongoSessionConverter is always from MongoSession HOT 3
- Upgrade to Spring Data Bom 2024.0.0-RC1
- Upgrade to MongoDB 5.0.1
- Possibility to apply the `SessionRepositoryFilter` conditionally. HOT 2
- Update to Spring Security 6.3.0-RC1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from spring-session.