Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ClientTransactionalMapQuorumTest.*. [Executing: TransactionOptions{timeoutMillis=120000, durability=1, txType=TWO_PHASE}] #7693

Closed
hasancelik opened this issue Mar 8, 2016 · 4 comments

Comments

Projects
None yet
4 participants
@hasancelik
Copy link
Contributor

commented Mar 8, 2016

org.junit.runners.model.TestTimedOutException: test timed out after 300000 milliseconds
    at sun.misc.Unsafe.park(Native Method)
    at java.util.concurrent.locks.LockSupport.park(LockSupport.java:156)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:811)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:969)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1281)
    at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:207)
    at com.hazelcast.client.connection.nio.ClientConnectionManagerImpl$BlockingCallback.get(ClientConnectionManagerImpl.java:259)
    at com.hazelcast.client.connection.nio.ClientConnectionManagerImpl.getOrConnect(ClientConnectionManagerImpl.java:234)
    at com.hazelcast.client.spi.impl.ClientTransactionManagerServiceImpl.connect(ClientTransactionManagerServiceImpl.java:107)
    at com.hazelcast.client.proxy.txn.TransactionContextProxy.<init>(TransactionContextProxy.java:58)
    at com.hazelcast.client.spi.impl.ClientTransactionManagerServiceImpl.newTransactionContext(ClientTransactionManagerServiceImpl.java:57)
    at com.hazelcast.client.impl.HazelcastClientInstanceImpl.newTransactionContext(HazelcastClientInstanceImpl.java:427)
    at com.hazelcast.client.impl.HazelcastClientProxy.newTransactionContext(HazelcastClientProxy.java:169)
    at com.hazelcast.client.quorum.ClientTransactionalMapQuorumTest.testTxReplaceThrowsExceptionWhenQuorumSizeNotMet(ClientTransactionalMapQuorumTest.java:207)

https://hazelcast-l337.ci.cloudbees.com/view/Official%20Builds/job/Hazelcast-3.x/com.hazelcast$hazelcast-client/4687/

https://hazelcast-l337.ci.cloudbees.com/view/Official%20Builds/job/Hazelcast-3.maintenance/1228/

These failures occur at Jenkins machines and my local.Our pr builder is working properly. I think problematic commit is: #7673
Here is the its pr builder:
https://hazelcast-l337.ci.cloudbees.com/job/new-lab-fast-pr/1797/

@hasancelik

This comment has been minimized.

Copy link
Contributor Author

commented Mar 8, 2016

suppressed by 65738ee & 6482f20

@sancar sancar assigned sancar and unassigned sancar Mar 9, 2016

sancar added a commit to sancar/hazelcast that referenced this issue Mar 11, 2016

Follow up to fix for non blocking Authentication in clients
Original fix was hazelcast#7673 for master, hazelcast#7674 for maintenance-3.x

Recent test failures revealed that some corner cases for that
implementation was missing. One obvious case is if getOrConnect
don't trigger a ConnectTask its Callback is not registered. And
it waits on that callback which will never be called.

fixes hazelcast#7718
fixes hazelcast#7709
fixes hazelcast#7693

sancar added a commit to sancar/hazelcast that referenced this issue Mar 11, 2016

Follow up to fix for non blocking Authentication in clients
Original fix was hazelcast#7673 for master, hazelcast#7674 for maintenance-3.x

Recent test failures revealed that some corner cases for that
implementation was missing. One obvious case is if getOrConnect
don't trigger a ConnectTask its Callback is not registered. And
it waits on that callback which will never be called.

fixes hazelcast#7718
fixes hazelcast#7709
fixes hazelcast#7693

sancar added a commit to sancar/hazelcast that referenced this issue Mar 11, 2016

Follow up to fix for non blocking Authentication in clients
Original fix was hazelcast#7673 for master, hazelcast#7674 for maintenance-3.x

Recent test failures revealed that some corner cases for that
implementation was missing. One obvious case is if getOrConnect
don't trigger a ConnectTask its Callback is not registered. And
it waits on that callback which will never be called.

fixes hazelcast#7718
fixes hazelcast#7709
fixes hazelcast#7693

sancar added a commit to sancar/hazelcast that referenced this issue Mar 11, 2016

Follow up to fix for non blocking Authentication in clients
Original fix was hazelcast#7673 for master, hazelcast#7674 for maintenance-3.x

Recent test failures revealed that some corner cases for that
implementation was missing. One obvious case is if getOrConnect
don't trigger a ConnectTask its Callback is not registered. And
it waits on that callback which will never be called.

fixes hazelcast#7718
fixes hazelcast#7709
fixes hazelcast#7693

@sancar sancar closed this in #7725 Mar 14, 2016

@hasancelik hasancelik removed the SUPPRESSED label May 12, 2016

@hasancelik

This comment has been minimized.

Copy link
Contributor Author

commented May 12, 2016

java.lang.Exception: Unexpected exception, expected<com.hazelcast.transaction.TransactionException> but was<com.hazelcast.core.OperationTimeoutException>
    at com.hazelcast.spi.impl.operationservice.impl.InvocationFuture.newOperationTimeoutException(InvocationFuture.java:150)
    at com.hazelcast.spi.impl.operationservice.impl.InvocationFuture.resolve(InvocationFuture.java:96)
    at com.hazelcast.spi.impl.operationservice.impl.InvocationFuture.resolveAndThrow(InvocationFuture.java:74)
    at com.hazelcast.spi.impl.AbstractInvocationFuture.get(AbstractInvocationFuture.java:158)
    at com.hazelcast.map.impl.query.MapQueryEngineImpl.addResultsOfPredicate(MapQueryEngineImpl.java:528)
    at com.hazelcast.map.impl.query.MapQueryEngineImpl.invokeQueryAllPartitions(MapQueryEngineImpl.java:434)
    at com.hazelcast.map.impl.tx.TransactionalMapProxy.keySet(TransactionalMapProxy.java:306)
    at com.hazelcast.map.impl.tx.TransactionalMapProxy.keySet(TransactionalMapProxy.java:291)
    at com.hazelcast.client.impl.protocol.task.transactionalmap.TransactionalMapKeySetMessageTask.innerCall(TransactionalMapKeySetMessageTask.java:47)
    at com.hazelcast.client.impl.protocol.task.AbstractTransactionalMessageTask.call(AbstractTransactionalMessageTask.java:34)
    at com.hazelcast.client.impl.protocol.task.AbstractCallableMessageTask.processMessage(AbstractCallableMessageTask.java:35)
    at com.hazelcast.client.impl.protocol.task.AbstractMessageTask.initializeAndProcessMessage(AbstractMessageTask.java:119)
    at com.hazelcast.client.impl.protocol.task.AbstractMessageTask.run(AbstractMessageTask.java:99)
    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)
    at com.hazelcast.util.executor.HazelcastManagedThread.executeRun(HazelcastManagedThread.java:76)
    at com.hazelcast.util.executor.HazelcastManagedThread.run(HazelcastManagedThread.java:92)
    at ------ submitted from ------.(Unknown Source)
    at com.hazelcast.client.spi.impl.ClientInvocationFuture.resolveAndThrow(ClientInvocationFuture.java:74)
    at com.hazelcast.client.spi.impl.ClientInvocationFuture.resolveAndThrow(ClientInvocationFuture.java:30)
    at com.hazelcast.spi.impl.AbstractInvocationFuture.get(AbstractInvocationFuture.java:158)
    at com.hazelcast.client.proxy.txn.ClientTxnProxy.invoke(ClientTxnProxy.java:49)
    at com.hazelcast.client.proxy.txn.ClientTxnMapProxy.keySet(ClientTxnMapProxy.java:173)
    at com.hazelcast.client.quorum.ClientTransactionalMapQuorumTest.testTxKeySetThrowsExceptionWhenQuorumSizeNotMet(ClientTransactionalMapQuorumTest.java:256)

https://hazelcast-l337.ci.cloudbees.com/view/Official%20Builds/job/Hazelcast-3.x-sonar/1049/

@hasancelik hasancelik reopened this May 12, 2016

@hasancelik hasancelik modified the milestones: 3.7, 3.6.2 May 12, 2016

@Donnerbart

This comment has been minimized.

Copy link
Contributor

commented Jul 1, 2016

I had a timeout on a local code coverage run in
testTxKeySetWithPredicateThrowsExceptionWhenQuorumSizeNotMet():

Executing: TransactionOptions{timeoutMillis=120000, durability=1, txType=TWO_PHASE}
org.junit.runners.model.TestTimedOutException: test timed out after 300000 milliseconds

    at sun.misc.Unsafe.park(Native Method)
    at java.util.concurrent.locks.LockSupport.park(LockSupport.java:304)
    at com.hazelcast.spi.impl.AbstractInvocationFuture.get(AbstractInvocationFuture.java:156)
    at com.hazelcast.client.proxy.txn.ClientTxnProxy.invoke(ClientTxnProxy.java:49)
    at com.hazelcast.client.proxy.txn.ClientTxnMapProxy.keySet(ClientTxnMapProxy.java:219)
    at com.hazelcast.client.quorum.ClientTransactionalMapQuorumTest.testTxKeySetWithPredicateThrowsExceptionWhenQuorumSizeNotMet(ClientTransactionalMapQuorumTest.java:265)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
    at org.junit.internal.runners.statements.ExpectException.evaluate(ExpectException.java:19)
    at com.hazelcast.test.FailOnTimeoutStatement$CallableStatement.call(FailOnTimeoutStatement.java:88)
    at com.hazelcast.test.FailOnTimeoutStatement$CallableStatement.call(FailOnTimeoutStatement.java:82)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.lang.Thread.run(Thread.java:745)

@cangencer cangencer self-assigned this Jul 18, 2016

cangencer added a commit to cangencer/hazelcast that referenced this issue Jul 20, 2016

Improve ClientTransactionalMapQuorumTest
Improved tests while investigating hazelcast#7693. Add tests for positive case,
and made exception handling more sensitive to catching the correct exception.

cangencer added a commit to cangencer/hazelcast that referenced this issue Jul 20, 2016

Improve ClientTransactionalMapQuorumTest
Improved tests while investigating hazelcast#7693. Add tests for positive case,
and made exception handling more sensitive to catching the correct exception.
@cangencer

This comment has been minimized.

Copy link
Contributor

commented Jul 20, 2016

I haven't been able to reproduce this issue, after running it for many hours both on EC2 and my local machine. Some test improvements have been made at #8557, but otherwise I'm suspecting the issue was not directly related to this test. The recent failures are also different from the original failures from when the issue was first opened. If again this test fails, it would be good to open a new issue instead.

@cangencer cangencer closed this Jul 20, 2016

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.