As asynchronous service task, it will retry when has exception (BpmnError) - 3 times by default. But I don't know if this service task's already catched by boundary error event, does it retry?
If boundary error event catches your bpmnError, engine does not create retry job for this particular bpmnError. It's possible later errors will make engine to create retry job later, though.