There is bug in jetty-session-redis, version 2.3.ga
Class com.ovea.jetty.session.redis.RedisSessionIdManager
method
Sessions were not deleting due to this invalid comparison.
Class com.ovea.jetty.session.redis.RedisSessionIdManager
method
- @Override
- protected List
scavenge( final ListclusterIds) { - List
expired = new LinkedList<String>(); - List
- @Override
- public List
- return jedis.multi(new TransactionBlock() {
- @Override
- public void execute() throws JedisException {
- for (String clusterId : clusterIds) {
- exists(REDIS_SESSION_KEY + clusterId);
- }
- }
- });
- }
- });
- for (int i = 0; i < status.size(); i++)
- if (Boolean.FALSE.equals(status.get(i))) // HERE WAS: " ZERO.equals "
- expired.add(clusterIds.get(i));
- if (LOG.isDebugEnabled() && !expired.isEmpty())
- LOG.debug("[RedisSessionIdManager] Scavenger found {} sessions to expire: {}", expired.size(), expired);
- return expired;
- }
Sessions were not deleting due to this invalid comparison.
Комментариев нет:
Отправить комментарий