@@ -487,32 +487,24 @@ public static Translog.Location performOnReplica(BulkShardRequest request, Index
487487 BulkItemRequest item = request .items ()[i ];
488488 final Engine .Result operationResult ;
489489 DocWriteRequest docWriteRequest = item .request ();
490- try {
491- switch (replicaItemExecutionMode (item , i )) {
492- case NORMAL :
493- final DocWriteResponse primaryResponse = item .getPrimaryResponse ().getResponse ();
494- operationResult = performOpOnReplica (primaryResponse , docWriteRequest , replica );
495- assert operationResult != null : "operation result must never be null when primary response has no failure" ;
496- location = syncOperationResultOrThrow (operationResult , location );
497- break ;
498- case NOOP :
499- break ;
500- case FAILURE :
501- final BulkItemResponse .Failure failure = item .getPrimaryResponse ().getFailure ();
502- assert failure .getSeqNo () != SequenceNumbers .UNASSIGNED_SEQ_NO : "seq no must be assigned" ;
503- operationResult = replica .markSeqNoAsNoop (failure .getSeqNo (), failure .getMessage ());
504- assert operationResult != null : "operation result must never be null when primary response has no failure" ;
505- location = syncOperationResultOrThrow (operationResult , location );
506- break ;
507- default :
508- throw new IllegalStateException ("illegal replica item execution mode for: " + docWriteRequest );
509- }
510- } catch (Exception e ) {
511- // if its not an ignore replica failure, we need to make sure to bubble up the failure
512- // so we will fail the shard
513- if (!TransportActions .isShardNotAvailableException (e )) {
514- throw e ;
515- }
490+ switch (replicaItemExecutionMode (item , i )) {
491+ case NORMAL :
492+ final DocWriteResponse primaryResponse = item .getPrimaryResponse ().getResponse ();
493+ operationResult = performOpOnReplica (primaryResponse , docWriteRequest , replica );
494+ assert operationResult != null : "operation result must never be null when primary response has no failure" ;
495+ location = syncOperationResultOrThrow (operationResult , location );
496+ break ;
497+ case NOOP :
498+ break ;
499+ case FAILURE :
500+ final BulkItemResponse .Failure failure = item .getPrimaryResponse ().getFailure ();
501+ assert failure .getSeqNo () != SequenceNumbers .UNASSIGNED_SEQ_NO : "seq no must be assigned" ;
502+ operationResult = replica .markSeqNoAsNoop (failure .getSeqNo (), failure .getMessage ());
503+ assert operationResult != null : "operation result must never be null when primary response has no failure" ;
504+ location = syncOperationResultOrThrow (operationResult , location );
505+ break ;
506+ default :
507+ throw new IllegalStateException ("illegal replica item execution mode for: " + docWriteRequest );
516508 }
517509 }
518510 return location ;
0 commit comments