Hi, There is a problem in 'SessionManager' implementation regarding count of expired sessions. In 'org.apache.catalina.session.ManagerBase' class: For each session, method 'ManagerBase.processExpires()' calls ''org.apache.catalina.session.StandardSession.isValid()' method and increments number of expired session (in case that session isn`t valid) ............... if (!sessions[i].isValid()) { expiredSessions++; expireHere++; } ............. But, 'StandardSession.isValid()' method triggers 'StandardSession.expire(true)' method in cases when session should be invalidated. This method also increments number of expired sessions ('SessionManager' attribute). expire(boolean value) ....... int numExpired = manager.getExpiredSessions(); numExpired++; manager.setExpiredSessions(numExpired); ........ At the end, as result of session invalidation process, number of expired sessions is doubled. Regards, Radivoj Milin