question: protected VersionTag fetchRemoteVersionTag ( Object key ) { VersionTag tag = null ; assert this . dataPolicy != DataPolicy . REPLICATE ; TransactionId txId = cache . getCacheTransactionManager ( ) . suspend ( ) ; try { boolean retry = true ; InternalDistributedMember member = getRandomReplicate ( ) ; while ( retry ) { try { if ( member == null ) { break ; } FetchVersionResponse response = RemoteFetchVersionMessage . send ( member , this , key ) ; tag = response . waitForResponse ( ) ; retry = false ; } catch ( RemoteOperationException e ) { member = getRandomReplicate ( ) ; if ( member != null ) { if ( logger . isDebugEnabled ( ) ) { logger . debug ( "Retrying RemoteFetchVersionMessage on member:{}" , member ) ; } } } } } finally { if ( txId != null ) { cache . getCacheTransactionManager ( ) . resume ( txId ) ; } } return tag ; }
target:  Fetch Version for the given key from a remote replicate member.