@Test public void retryKeySet_writesTransactionException_ifIsInTransactionAndIsPartitionedRegion() throws Exception { long startTime = 0; // arbitrary value TestableKeySet keySet = new TestableKeySet(); keySet.setIsInTransaction(true); when(message.isRetry()).thenReturn(true); when(region.getPartitionAttributes()).thenReturn(mock(PartitionAttributes.class)); keySet.cmdExecute(message, serverConnection, securityService, startTime); assertThat(keySet.exceptionSentToClient).isInstanceOf(TransactionException.class).hasMessage( "Failover on a set operation of a partitioned region is not allowed in a transaction."); }
@Test public void retryKeySet_doesNotWriteTransactionException_ifIsNotInTransaction() throws Exception { long startTime = 0; // arbitrary value TestableKeySet keySet = new TestableKeySet(); keySet.setIsInTransaction(false); when(message.isRetry()).thenReturn(true); when(region.getPartitionAttributes()).thenReturn(mock(PartitionAttributes.class)); keySet.cmdExecute(message, serverConnection, securityService, startTime); assertThat(keySet.exceptionSentToClient).isNull(); }
@Test public void nonRetryKeySet_doesNotWriteTransactionException() throws Exception { long startTime = 0; // arbitrary value TestableKeySet keySet = new TestableKeySet(); keySet.setIsInTransaction(true); when(message.isRetry()).thenReturn(false); when(region.getPartitionAttributes()).thenReturn(mock(PartitionAttributes.class)); keySet.cmdExecute(message, serverConnection, securityService, startTime); assertThat(keySet.exceptionSentToClient).isNull(); }
@Test public void retryKeySet_doesNotWriteTransactionException_ifIsInTransactionAndIsNotPartitionedRegion() throws Exception { long startTime = 0; // arbitrary value TestableKeySet keySet = new TestableKeySet(); keySet.setIsInTransaction(true); when(message.isRetry()).thenReturn(true); when(region.getPartitionAttributes()).thenReturn(null); keySet.cmdExecute(message, serverConnection, securityService, startTime); assertThat(keySet.exceptionSentToClient).isNull(); }
@Test public void regularDeltaPutShouldNotRetryFlagInMessage() { PutOp.PutOpImpl putOp = new PutOp.PutOpImpl("testRegion", "testKey", "testValue", new byte[10], getEntryEvent(), Operation.UPDATE, false, false, null, false, false); assertFalse(putOp.getMessage().isRetry()); }
@Test public void regularPutShouldNotRetryFlagInMessage() { PutOp.PutOpImpl putOp = new PutOp.PutOpImpl("testRegion", "testKey", "testValue", null, getEntryEvent(), Operation.UPDATE, false, false, null, false, false); assertFalse(putOp.getMessage().isRetry()); }
@Test public void failedDeltaPutShouldSetRetryFlagInMessage() { PutOp.PutOpImpl putOp = new PutOp.PutOpImpl("testRegion", "testKey", "testValue", new byte[10], getEntryEvent(), Operation.UPDATE, false, false, null, true, false); assertTrue(putOp.getMessage().isRetry()); }
return; if (clientMessage.isRetry()) {
if (clientMessage.isRetry()) {
if (clientMessage.isRetry()) {
if (clientMessage.isRetry()) {
serverConnection.getName(), (isDelta ? " delta " : " "), clientMessage.getPayloadLength(), serverConnection.getSocketString(), regionName, key, clientMessage.getTransactionId(), clientMessage.isRetry()); if (clientMessage.isRetry()) { if (clientMessage.isRetry() && clientEvent.getVersionTag() != null) { if (clientMessage.isRetry() && clientEvent.isConcurrencyConflict() && clientEvent.getVersionTag() != null) { if (isDebugEnabled) { didPut = region.basicBridgeReplace(key, expectedOldValue, value, isObject, callbackArg, serverConnection.getProxyID(), true, clientEvent); if (clientMessage.isRetry() && clientEvent.getVersionTag() != null) { if (isDebugEnabled) { logger.debug("replace(k,v,v) operation was successful last time with version {}", if (clientMessage.isRetry() && clientEvent.isConcurrencyConflict() && clientEvent.getVersionTag() != null) { result = true; serverConnection.getProxyID(), true, clientEvent); if (clientMessage.isRetry() && clientEvent.isConcurrencyConflict() && clientEvent.getVersionTag() != null) { if (isDebugEnabled) {
if (clientMessage.isRetry()) { keySetWriteChunkedException(clientMessage, new TransactionException(
if (op.getMessage().isRetry()) { event.setRetried(true);