[
https://issues.redhat.com/browse/WFLY-13131?page=com.atlassian.jira.plugi...
]
Radoslav Husar updated WFLY-13131:
----------------------------------
Affects Version/s: 20.0.0.Final
Re-enable
AbstractDatabasePersistenceWebFailoverTestCase#testGracefulSimpleFailover
-----------------------------------------------------------------------------------
Key: WFLY-13131
URL:
https://issues.redhat.com/browse/WFLY-13131
Project: WildFly
Issue Type: Task
Components: Clustering
Affects Versions: 19.0.0.Beta2, 20.0.0.Final
Reporter: Radoslav Husar
Assignee: Radoslav Husar
Priority: Major
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)