TestDummyVirusScanner fails to close session in some cases.
This happens at least on MariaDB and MySQL, quite often.
java.lang.AssertionError: invoke on features error [Holder [type=class org.nuxeo.ecm.core.test.CoreFeature], Holder [type=class org.nuxeo.ecm.core.test.TransactionalFeature], Holder [type=class org.nuxeo.runtime.test.runner.ContainerFeature], Holder [type=class org.nuxeo.runtime.test.runner.RuntimeFeature], Holder [type=class org.nuxeo.runtime.test.runner.RandomBug$Feature], Holder [type=class org.nuxeo.runtime.test.runner.ConditionalIgnoreRule$Feature], Holder [type=class org.nuxeo.runtime.test.runner.MDCFeature]] at org.nuxeo.runtime.test.runner.FeaturesLoader.apply(FeaturesLoader.java:123) at org.nuxeo.runtime.test.runner.FeaturesLoader.apply(FeaturesLoader.java:113) at org.nuxeo.runtime.test.runner.FeaturesRunner.afterRun(FeaturesRunner.java:167) at org.nuxeo.runtime.test.runner.FeaturesRunner$AfterClassStatement.evaluate(FeaturesRunner.java:237) at org.nuxeo.runtime.test.runner.FeaturesRunner$RulesFactory$1.evaluate(FeaturesRunner.java:429) at org.nuxeo.runtime.test.runner.FeaturesRunner$BeforeClassStatement.evaluate(FeaturesRunner.java:218) at org.junit.rules.RunRules.evaluate(RunRules.java:20) at org.junit.runners.ParentRunner.run(ParentRunner.java:363) at org.junit.runners.Suite.runChild(Suite.java:128) at org.junit.runners.Suite.runChild(Suite.java:27) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) at org.junit.runners.ParentRunner.run(ParentRunner.java:363) at org.junit.runner.JUnitCore.run(JUnitCore.java:137) at org.junit.runner.JUnitCore.run(JUnitCore.java:115) at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.createRequestAndRun(JUnitCoreWrapper.java:113) at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.executeEager(JUnitCoreWrapper.java:85) at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.execute(JUnitCoreWrapper.java:54) at org.apache.maven.surefire.junitcore.JUnitCoreProvider.invoke(JUnitCoreProvider.java:134) at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103) Suppressed: java.lang.AssertionError: leaked 2 sessions at org.nuxeo.ecm.core.test.CoreFeature.afterRun(CoreFeature.java:240) at org.nuxeo.runtime.test.runner.FeaturesRunner.lambda$afterRun$4(FeaturesRunner.java:167) at org.nuxeo.runtime.test.runner.FeaturesLoader.apply(FeaturesLoader.java:126) ... 24 more Suppressed: org.nuxeo.ecm.core.api.CoreSessionService$CoreSessionRegistrationInfo: CoreSessionDebugInfo(Nuxeo-Work-default-1:3873888098328720.1284218027, test/system#1521) at org.nuxeo.ecm.core.api.CoreSessionServiceImpl.createCoreSession(CoreSessionServiceImpl.java:44) at org.nuxeo.ecm.core.api.CoreInstance.openCoreSession(CoreInstance.java:163) at org.nuxeo.ecm.core.api.CoreInstance.openCoreSessionSystem(CoreInstance.java:98) at org.nuxeo.ecm.core.event.impl.ReconnectedEventBundleImpl.getReconnectedCoreSession(ReconnectedEventBundleImpl.java:93) at org.nuxeo.ecm.core.event.impl.ReconnectedEventBundleImpl.getReconnectedEvents(ReconnectedEventBundleImpl.java:111) at org.nuxeo.ecm.core.event.impl.ReconnectedEventBundleImpl.iterator(ReconnectedEventBundleImpl.java:222) at org.nuxeo.ecm.core.event.test.virusscan.listeners.VirusScannerProcessor.handleEventPostprocessing(VirusScannerProcessor.java:118) at org.nuxeo.ecm.core.event.impl.AbstractLongRunningListener.handleEvent(AbstractLongRunningListener.java:93) at org.nuxeo.ecm.core.event.impl.AsyncEventExecutor$ListenerWork.work(AsyncEventExecutor.java:219) at org.nuxeo.ecm.core.work.AbstractWork.runWorkWithTransaction(AbstractWork.java:379) at org.nuxeo.ecm.core.work.AbstractWork.run(AbstractWork.java:338) at org.nuxeo.ecm.core.work.WorkHolder.run(WorkHolder.java:57) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Suppressed: org.nuxeo.ecm.core.api.CoreSessionService$CoreSessionRegistrationInfo: CoreSessionDebugInfo(Nuxeo-Work-default-2:3873888109795770.958561037, test/system#1532) at org.nuxeo.ecm.core.api.CoreSessionServiceImpl.createCoreSession(CoreSessionServiceImpl.java:44) at org.nuxeo.ecm.core.api.CoreInstance.openCoreSession(CoreInstance.java:163) at org.nuxeo.ecm.core.api.CoreInstance.openCoreSessionSystem(CoreInstance.java:98) at org.nuxeo.ecm.core.event.impl.ReconnectedEventBundleImpl.getReconnectedCoreSession(ReconnectedEventBundleImpl.java:93) at org.nuxeo.ecm.core.event.impl.ReconnectedEventBundleImpl.getReconnectedEvents(ReconnectedEventBundleImpl.java:111) at org.nuxeo.ecm.core.event.impl.ReconnectedEventBundleImpl.iterator(ReconnectedEventBundleImpl.java:222) at org.nuxeo.ecm.core.event.test.virusscan.listeners.VirusScannerProcessor.handleEventPostprocessing(VirusScannerProcessor.java:118) at org.nuxeo.ecm.core.event.impl.AbstractLongRunningListener.handleEvent(AbstractLongRunningListener.java:93) at org.nuxeo.ecm.core.event.impl.AsyncEventExecutor$ListenerWork.work(AsyncEventExecutor.java:219) at org.nuxeo.ecm.core.work.AbstractWork.runWorkWithTransaction(AbstractWork.java:379) at org.nuxeo.ecm.core.work.AbstractWork.run(AbstractWork.java:338) at org.nuxeo.ecm.core.work.WorkHolder.run(WorkHolder.java:57) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745)