You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The implementation within org.springframework.session.data.redis.RedisOperationsSessionRepository puts the attribute, to be removed, back into Redis and nulls out the value. This breaks consistency with the cached session attributes and creates an orphan in the Redis database. Furthermore, upon fail-over if the session is re-hydrated back from Redis the attribute will once again be cached and available to the web app, however this time without its value.
@OverRide
public void removeAttribute(String attributeName) {
this.cached.removeAttribute(attributeName); this.putAndFlush(getSessionAttrNameKey(attributeName), null);
}
Shouldn't the entire attribute (key and value) be removed from Redis?