Skip to content

Commit

Permalink
Akka.Persistence.Sql.Common: harden SqlJournal and `SqlSnapshotStor…
Browse files Browse the repository at this point in the history
…e` against initialization failures (#7325)

* Harden SQL journal in the event of failed initialization

* harden snapshot store too

---------

Co-authored-by: Gregorius Soedharmo <arkatufus@yahoo.com>
  • Loading branch information
Aaronontheweb and Arkatufus authored Aug 23, 2024
1 parent ae942d0 commit 2502ea9
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -257,8 +257,9 @@ protected bool WaitingForInitialization(object message)
return true;
case Status.Failure fail:
Log.Error(fail.Cause, "Failure during {0} initialization.", Self);
Context.Stop(Self);
return true;

// trigger a restart so we have some hope of succeeding in the future even if initialization failed
throw new ApplicationException("Failed to initialize SQL Journal.", fail.Cause);
default:
Stash.Stash();
return true;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -137,8 +137,9 @@ private bool WaitingForInitialization(object message)
return true;
case Status.Failure msg:
Log.Error(msg.Cause, "Error during snapshot store initialization");
Context.Stop(Self);
return true;

// trigger a restart so we have some hope of succeeding in the future even if initialization failed
throw new ApplicationException("Failed to initialize SQL SnapshotStore.", msg.Cause);
default:
Stash.Stash();
return true;
Expand Down

0 comments on commit 2502ea9

Please sign in to comment.