diff --git a/src/core/Akka.Persistence/Eventsourced.Recovery.cs b/src/core/Akka.Persistence/Eventsourced.Recovery.cs index 840fd999cc4..1150b4130c8 100644 --- a/src/core/Akka.Persistence/Eventsourced.Recovery.cs +++ b/src/core/Akka.Persistence/Eventsourced.Recovery.cs @@ -100,7 +100,7 @@ bool RecoveryBehavior(object message) Unhandled(offer); } } - catch(Exception ex) + catch (Exception ex) { try { @@ -150,6 +150,7 @@ bool RecoveryBehavior(object message) } catch (Exception) { + timeoutCancelable.Cancel(); ReturnRecoveryPermit(); throw; } @@ -261,6 +262,7 @@ private EventsourcedState Recovering(Receive recoveryBehavior, TimeSpan timeout) } catch (Exception) { + timeoutCancelable.Cancel(); ReturnRecoveryPermit(); throw; }