The integration tests that use SessionEventRegistry assume that there is only a single event type for each session id. This leads to race conditions that result in ClassCastExceptions. For example:
ReactiveRedisIndexedSessionRepositoryITests > findByPrincipalNameWhenExpireKeyEventThenRemovesIndexAndSessionExpiredEvent() FAILED
java.lang.ClassCastException at ReactiveRedisIndexedSessionRepositoryITests.java:171