I've let my KB server run for a while (read overnight) and as I'm resuming testing I'm getting a shiro stacktrace complaining about inactive session.
org.apache.shiro.session.UnknownSessionException: There is no session with id [8930]
at org.apache.shiro.session.mgt.eis.AbstractSessionDAO.readSession(AbstractSessionDAO.java:170) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.session.mgt.eis.CachingSessionDAO.readSession(CachingSessionDAO.java:261) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.session.mgt.DefaultSessionManager.retrieveSessionFromDataSource(DefaultSessionManager.java:236) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.session.mgt.DefaultSessionManager.retrieveSession(DefaultSessionManager.java:222) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.session.mgt.AbstractValidatingSessionManager.doGetSession(AbstractValidatingSessionManager.java:118) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.session.mgt.AbstractNativeSessionManager.lookupSession(AbstractNativeSessionManager.java:108) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.session.mgt.AbstractNativeSessionManager.lookupRequiredSession(AbstractNativeSessionManager.java:112) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.session.mgt.AbstractNativeSessionManager.getHost(AbstractNativeSessionManager.java:197) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.session.mgt.DelegatingSession.getHost(DelegatingSession.java:111) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.session.ProxiedSession.getHost(ProxiedSession.java:93) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.session.ProxiedSession.getHost(ProxiedSession.java:93) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.session.ProxiedSession.getHost(ProxiedSession.java:93) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.session.ProxiedSession.getHost(ProxiedSession.java:93) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.session.ProxiedSession.getHost(ProxiedSession.java:93) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.session.ProxiedSession.getHost(ProxiedSession.java:93) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.subject.support.DefaultSubjectContext.resolveHost(DefaultSubjectContext.java:270) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.web.subject.support.DefaultWebSubjectContext.resolveHost(DefaultWebSubjectContext.java:51) ~[shiro-web-1.2.2.jar:1.2.2]
at org.apache.shiro.web.mgt.DefaultWebSubjectFactory.createSubject(DefaultWebSubjectFactory.java:58) ~[shiro-web-1.2.2.jar:1.2.2]
at org.apache.shiro.mgt.DefaultSecurityManager.doCreateSubject(DefaultSecurityManager.java:369) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.mgt.DefaultSecurityManager.createSubject(DefaultSecurityManager.java:344) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.mgt.DefaultSecurityManager.createSubject(DefaultSecurityManager.java:183) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.mgt.DefaultSecurityManager.login(DefaultSecurityManager.java:283) ~[shiro-core-1.2.2.jar:1.2.2]
at org.apache.shiro.subject.support.DelegatingSubject.login(DelegatingSubject.java:256) ~[shiro-core-1.2.2.jar:1.2.2]
at org.killbill.billing.util.security.api.DefaultSecurityApi.login(DefaultSecurityApi.java:48) ~[killbill-util-0.11.5-SNAPSHOT.jar:na]
at com.xxx.killbill.plugin.adyen.AdyenPaymentListener.fakeAdminLogin(AdyenPaymentListener.java:189) ~[na:na]
at com.xxx.killbill.plugin.adyen.AdyenPaymentListener.handleKillbillEvent(AdyenPaymentListener.java:163) ~[na:na]
at org.killbill.killbill.osgi.libs.killbill.OSGIKillbillEventDispatcher$1$1.update(OSGIKillbillEventDispatcher.java:62) ~[killbill-osgi-bundles-lib-killbill-0.11.5-SNAPSHOT.jar:na]
at java.util.Observable.notifyObservers(Observable.java:159) ~[na:1.7.0_55]
at org.killbill.billing.osgi.KillbillEventObservable.handleKillbillEvent(KillbillEventObservable.java:60) ~[killbill-osgi-0.11.5-SNAPSHOT.jar:na]
at sun.reflect.GeneratedMethodAccessor202.invoke(Unknown Source) ~[na:na]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_55]
at java.lang.reflect.Method.invoke(Method.java:606) ~[na:1.7.0_55]
at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) ~[guava-15.0.jar:na]
at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:47) ~[guava-15.0.jar:na]
at com.google.common.eventbus.EventBusThatThrowsException.dispatchWithException(EventBusThatThrowsException.java:97) ~[killbill-queue-0.2.15.jar:na]
at com.google.common.eventbus.EventBusThatThrowsException.dispatchQueuedEventsWithException(EventBusThatThrowsException.java:87) ~[killbill-queue-0.2.15.jar:na]
at com.google.common.eventbus.EventBusThatThrowsException.postWithException(EventBusThatThrowsException.java:71) ~[killbill-queue-0.2.15.jar:na]
at org.killbill.bus.DefaultPersistentBus.doProcessEvents(DefaultPersistentBus.java:106) ~[killbill-queue-0.2.15.jar:na]
at org.killbill.queue.DefaultQueueLifecycle$1.run(DefaultQueueLifecycle.java:107) [killbill-queue-0.2.15.jar:na]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_55]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_55]
at java.lang.Thread.run(Thread.java:745) [na:1.7.0_55]
I've searched a bit and found two very similar issues.