diff --git a/enterprise/causal-clustering/src/main/java/org/neo4j/causalclustering/catchup/storecopy/StoreCopyClient.java b/enterprise/causal-clustering/src/main/java/org/neo4j/causalclustering/catchup/storecopy/StoreCopyClient.java index 6c1a4e8b62161..f25be8e00adeb 100644 --- a/enterprise/causal-clustering/src/main/java/org/neo4j/causalclustering/catchup/storecopy/StoreCopyClient.java +++ b/enterprise/causal-clustering/src/main/java/org/neo4j/causalclustering/catchup/storecopy/StoreCopyClient.java @@ -78,7 +78,8 @@ private void copyFilesIndividually( PrepareStoreCopyResponse prepareStoreCopyRes long lastTransactionId = prepareStoreCopyResponse.lastTransactionId(); for ( File file : prepareStoreCopyResponse.getFiles() ) { - persistentCall( new GetStoreFileRequest( expectedStoreId, file, lastTransactionId ), filesCopyAdaptor( storeFileStream, log ), addressProvider, + persistentCallToSecondary( new GetStoreFileRequest( expectedStoreId, file, lastTransactionId ), filesCopyAdaptor( storeFileStream, log ), + addressProvider, terminationConditions.get() ); } } @@ -92,12 +93,14 @@ private void copyIndexSnapshotIndividually( PrepareStoreCopyResponse prepareStor while ( indexIds.hasNext() ) { long indexId = indexIds.next(); - persistentCall( new GetIndexFilesRequest( expectedStoreId, indexId, lastTransactionId ), filesCopyAdaptor( storeFileStream, log ), addressProvider, + persistentCallToSecondary( new GetIndexFilesRequest( expectedStoreId, indexId, lastTransactionId ), filesCopyAdaptor( storeFileStream, log ), + addressProvider, terminationConditions.get() ); } } - private void persistentCall( CatchUpRequest request, CatchUpResponseAdaptor copyHandler, CatchupAddressProvider addressProvider, + private void persistentCallToSecondary( CatchUpRequest request, CatchUpResponseAdaptor copyHandler, + CatchupAddressProvider addressProvider, TerminationCondition terminationCondition ) throws StoreCopyFailedException { TimeoutStrategy.Timeout timeout = backOffStrategy.newTimeout(); @@ -106,24 +109,20 @@ private void persistentCall( CatchUpRequest request, CatchUpResponseAdaptor signal, GetStoreIdR } } - private boolean successfulFileDownload( StoreCopyFinishedResponse response ) throws StoreCopyFailedException + private boolean successfulRequest( StoreCopyFinishedResponse response, CatchUpRequest request ) throws StoreCopyFailedException { StoreCopyFinishedResponse.Status responseStatus = response.status(); - log.debug( "Request for individual file resulted in response type: %s", response.status() ); if ( responseStatus == StoreCopyFinishedResponse.Status.SUCCESS ) { + log.info( format( "Request was successful '%s'", request ) ); return true; } - else if ( responseStatus == StoreCopyFinishedResponse.Status.E_TOO_FAR_BEHIND ) - { - return false; - } - else if ( responseStatus == StoreCopyFinishedResponse.Status.E_UNKNOWN ) - { - return false; - } - else if ( responseStatus == StoreCopyFinishedResponse.Status.E_STORE_ID_MISMATCH ) + else if ( StoreCopyFinishedResponse.Status.E_TOO_FAR_BEHIND == responseStatus || StoreCopyFinishedResponse.Status.E_UNKNOWN == responseStatus || + StoreCopyFinishedResponse.Status.E_STORE_ID_MISMATCH == responseStatus ) { + log.warn( format( "Request failed '%s'. With response: %s", request, response.status() ) ); return false; } else { - throw new StoreCopyFailedException( "Unknown response type: " + responseStatus ); + throw new StoreCopyFailedException( format( "Request responded with an unknown response type: %s. '%s'", responseStatus, request ) ); } } }