[jboss-jira] [JBoss JIRA] (WFLY-13131) Reenable AbstractDatabasePersistenceWebFailoverTestCase#testGracefulSimpleFailover

Radoslav Husar (Jira) issues at jboss.org
Wed Feb 19 05:53:00 EST 2020


Radoslav Husar created WFLY-13131:
-------------------------------------

             Summary: Reenable AbstractDatabasePersistenceWebFailoverTestCase#testGracefulSimpleFailover
                 Key: WFLY-13131
                 URL: https://issues.redhat.com/browse/WFLY-13131
             Project: WildFly
          Issue Type: Task
          Components: Clustering
            Reporter: Radoslav Husar
            Assignee: Radoslav Husar


The implementation for {{org.jboss.as.test.clustering.cluster.web.persistence.AbstractDatabasePersistenceWebFailoverTestCase#testGracefulSimpleFailover}} is now no-op since it fails intermittently. 

The idea is to rework to use external database process since H2's AUTO_SERVER doesn't handle server restarts reliably.

The test fail manifests as

{noformat}
java.lang.AssertionError: expected:<200> but was:<500>
{noformat}

and the {target/h2/web-sessions.trace.db} contains the following:

{noformat}
2020-02-19 11:43:28 database: opening /Users/rhusar/git/wildfly/testsuite/integration/clustering/target/h2/web-sessions
org.h2.message.DbException: Error opening database: "Sleep interrupted" [8000-197]
	at org.h2.message.DbException.get(DbException.java:168)
	at org.h2.store.FileLock.getExceptionFatal(FileLock.java:428)
	at org.h2.store.FileLock.sleep(FileLock.java:423)
	at org.h2.store.FileLock.lockFile(FileLock.java:333)
	at org.h2.store.FileLock.lock(FileLock.java:108)
	at org.h2.engine.Database.open(Database.java:674)
	at org.h2.engine.Database.openDatabase(Database.java:286)
	at org.h2.engine.Database.<init>(Database.java:280)
	at org.h2.engine.Engine.openSession(Engine.java:66)
	at org.h2.engine.Engine.openSession(Engine.java:179)
	at org.h2.engine.Engine.createSessionAndValidate(Engine.java:157)
	at org.h2.engine.Engine.createSession(Engine.java:140)
	at org.h2.engine.Engine.createSession(Engine.java:28)
	at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:351)
	at org.h2.engine.SessionRemote.autoReconnect(SessionRemote.java:518)
	at org.h2.engine.SessionRemote.removeServer(SessionRemote.java:483)
	at org.h2.command.CommandRemote.prepare(CommandRemote.java:101)
	at org.h2.command.CommandRemote.<init>(CommandRemote.java:51)
	at org.h2.engine.SessionRemote.prepareCommand(SessionRemote.java:493)
	at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1247)
	at org.h2.jdbc.JdbcPreparedStatement.<init>(JdbcPreparedStatement.java:76)
	at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:694)
	at org.jboss.jca.adapters.jdbc.BaseWrapperManagedConnection.doPrepareStatement(BaseWrapperManagedConnection.java:761)
	at org.jboss.jca.adapters.jdbc.BaseWrapperManagedConnection.prepareStatement(BaseWrapperManagedConnection.java:747)
	at org.jboss.jca.adapters.jdbc.WrappedConnection$4.produce(WrappedConnection.java:478)
	at org.jboss.jca.adapters.jdbc.WrappedConnection$4.produce(WrappedConnection.java:476)
	at org.jboss.jca.adapters.jdbc.SecurityActions.executeInTccl(SecurityActions.java:97)
	at org.jboss.jca.adapters.jdbc.WrappedConnection.prepareStatement(WrappedConnection.java:476)
	at org.infinispan.persistence.jdbc.stringbased.JdbcStringBasedStore.load(JdbcStringBasedStore.java:351)
	at org.infinispan.persistence.spi.SegmentedAdvancedLoadWriteStore.load(SegmentedAdvancedLoadWriteStore.java:46)
	at org.infinispan.persistence.manager.PersistenceManagerImpl.loadFromAllStores(PersistenceManagerImpl.java:642)
	at org.infinispan.persistence.internal.PersistenceUtil.loadAndCheckExpiration(PersistenceUtil.java:139)
	at org.infinispan.persistence.internal.PersistenceUtil.lambda$loadAndComputeInDataContainer$0(PersistenceUtil.java:97)
	at org.infinispan.container.impl.AbstractInternalDataContainer.lambda$compute$3(AbstractInternalDataContainer.java:231)
	at java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1853)
	at org.infinispan.container.impl.AbstractInternalDataContainer.compute(AbstractInternalDataContainer.java:230)
	at org.infinispan.persistence.internal.PersistenceUtil.loadAndComputeInDataContainer(PersistenceUtil.java:119)
	at org.infinispan.persistence.internal.PersistenceUtil.loadAndStoreInDataContainer(PersistenceUtil.java:53)
	at org.infinispan.interceptors.impl.CacheLoaderInterceptor.loadInContext(CacheLoaderInterceptor.java:333)
	at org.infinispan.interceptors.impl.CacheLoaderInterceptor.loadIfNeeded(CacheLoaderInterceptor.java:328)
	at org.infinispan.interceptors.impl.CacheLoaderInterceptor.visitDataCommand(CacheLoaderInterceptor.java:195)
	at org.infinispan.interceptors.impl.CacheLoaderInterceptor.visitGetKeyValueCommand(CacheLoaderInterceptor.java:130)
	at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:39)
	at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextThenAccept(BaseAsyncInterceptor.java:98)
	at org.infinispan.interceptors.impl.EntryWrappingInterceptor.visitDataReadCommand(EntryWrappingInterceptor.java:204)
	at org.infinispan.interceptors.impl.EntryWrappingInterceptor.visitGetKeyValueCommand(EntryWrappingInterceptor.java:192)
	at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:39)
	at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:54)
	at org.infinispan.interceptors.DDAsyncInterceptor.handleDefault(DDAsyncInterceptor.java:54)
	at org.infinispan.interceptors.DDAsyncInterceptor.visitGetKeyValueCommand(DDAsyncInterceptor.java:106)
	at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:39)
	at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:54)
	at org.infinispan.interceptors.DDAsyncInterceptor.handleDefault(DDAsyncInterceptor.java:54)
	at org.infinispan.interceptors.DDAsyncInterceptor.visitGetKeyValueCommand(DDAsyncInterceptor.java:106)
	at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:39)
	at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:54)
	at org.infinispan.interceptors.locking.PessimisticLockingInterceptor.visitDataReadCommand(PessimisticLockingInterceptor.java:61)
	at org.infinispan.interceptors.locking.AbstractLockingInterceptor.visitGetKeyValueCommand(AbstractLockingInterceptor.java:107)
	at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:39)
	at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:54)
	at org.infinispan.interceptors.impl.TxInterceptor.visitGetKeyValueCommand(TxInterceptor.java:318)
	at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:39)
	at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextAndHandle(BaseAsyncInterceptor.java:183)
	at org.infinispan.interceptors.impl.BaseStateTransferInterceptor.handleReadCommand(BaseStateTransferInterceptor.java:193)
	at org.infinispan.interceptors.impl.BaseStateTransferInterceptor.visitGetKeyValueCommand(BaseStateTransferInterceptor.java:168)
	at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:39)
	at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextAndExceptionally(BaseAsyncInterceptor.java:123)
	at org.infinispan.interceptors.impl.InvocationContextInterceptor.visitCommand(InvocationContextInterceptor.java:90)
	at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:56)
	at org.infinispan.interceptors.impl.BatchingInterceptor.handleDefault(BatchingInterceptor.java:69)
	at org.infinispan.interceptors.DDAsyncInterceptor.visitGetKeyValueCommand(DDAsyncInterceptor.java:106)
	at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:39)
	at org.infinispan.interceptors.DDAsyncInterceptor.visitCommand(DDAsyncInterceptor.java:50)
	at org.infinispan.interceptors.impl.AsyncInterceptorChainImpl.invoke(AsyncInterceptorChainImpl.java:248)
	at org.infinispan.cache.impl.CacheImpl.get(CacheImpl.java:527)
	at org.infinispan.cache.impl.CacheImpl.get(CacheImpl.java:520)
	at org.infinispan.cache.impl.AbstractDelegatingCache.get(AbstractDelegatingCache.java:438)
	at org.infinispan.cache.impl.EncoderCache.get(EncoderCache.java:660)
	at org.infinispan.cache.impl.AbstractDelegatingCache.get(AbstractDelegatingCache.java:438)
	at org.wildfly.clustering.web.infinispan.session.InfinispanSessionMetaDataFactory.getValue(InfinispanSessionMetaDataFactory.java:100)
	at org.wildfly.clustering.web.infinispan.session.InfinispanSessionMetaDataFactory.findValue(InfinispanSessionMetaDataFactory.java:88)
	at org.wildfly.clustering.web.infinispan.session.InfinispanSessionMetaDataFactory.findValue(InfinispanSessionMetaDataFactory.java:56)
	at org.wildfly.clustering.web.infinispan.session.SessionExpirationScheduler.schedule(SessionExpirationScheduler.java:61)
	at org.wildfly.clustering.web.infinispan.session.SessionExpirationScheduler.schedule(SessionExpirationScheduler.java:45)
	at org.wildfly.clustering.web.infinispan.session.InfinispanSessionManagerFactory$ScheduleExpirationTask.run(InfinispanSessionManagerFactory.java:286)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at org.jboss.as.clustering.context.ContextReferenceExecutor.execute(ContextReferenceExecutor.java:49)
	at org.jboss.as.clustering.context.ContextualExecutor$1.run(ContextualExecutor.java:70)
	at java.lang.Thread.run(Thread.java:748)
	at org.jboss.threads.JBossThread.run(JBossThread.java:485)
Caused by: org.h2.jdbc.JdbcSQLException: Error opening database: "Sleep interrupted" [8000-197]
	at org.h2.message.DbException.getJdbcSQLException(DbException.java:357)
	... 93 more
Caused by: java.lang.InterruptedException: sleep interrupted
	at java.lang.Thread.sleep(Native Method)
	at org.h2.store.FileLock.sleep(FileLock.java:421)
	... 90 more

{noformat}



--
This message was sent by Atlassian Jira
(v7.13.8#713008)


More information about the jboss-jira mailing list