ptrdom opened a new pull request, #3058: URL: https://github.com/apache/pekko/pull/3058
Motivation: Like EventSourcedBehavior, DurableStateBehavior should allow configuring its persistence plugin at runtime so the same plugin class can back multiple, isolated stores (e.g. the pekko-persistence-r2dbc plugin). Modification: Add DurableStateBehavior.withDurableStateStorePluginConfig (Scala) and an overridable durableStateStorePluginConfig (Java), threaded through DurableStateBehaviorImpl, DurableStateSettings, and BehaviorSetup. Add Config-accepting overloads of DurableStateStoreRegistry.durableStateStoreFor and getDurableStateStoreFor that merge the runtime config ahead of the system config. The recovery-timeout is now resolved from the merged config so a plugin defined only at runtime resolves correctly. Result: DurableStateBehavior can be configured with a runtime plugin Config, and the store registry resolves the plugin using it. Tests: - sbt persistence/mimaReportBinaryIssues persistence-typed/mimaReportBinaryIssues - success - sbt persistence-typed-tests/testOnly (all state.scaladsl and state.javadsl specs) - All tests passed References: Fixes #1798 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
