- // We are faking the sender
- persistData(self(), transactionId, payload, batchHint);
+ boolean canSkipPayload = !hasFollowers() && !persistence().isRecoveryApplicable();
+ if (canSkipPayload) {
+ applyState(self(), transactionId, payload);
+ } else {
+ // We are faking the sender
+ persistData(self(), transactionId, payload, batchHint);
+ }