diff --git a/components/domino-logic/src/main/kotlin/net/corda/lifecycle/domino/logic/util/SubscriptionDominoTileBase.kt b/components/domino-logic/src/main/kotlin/net/corda/lifecycle/domino/logic/util/SubscriptionDominoTileBase.kt index 70eb443ebc9..79aea1fcacd 100644 --- a/components/domino-logic/src/main/kotlin/net/corda/lifecycle/domino/logic/util/SubscriptionDominoTileBase.kt +++ b/components/domino-logic/src/main/kotlin/net/corda/lifecycle/domino/logic/util/SubscriptionDominoTileBase.kt @@ -126,10 +126,11 @@ abstract class SubscriptionDominoTileBase( } private fun createAndStartSubscription() { + subscriptionRegistration.get()?.close() coordinator.createManagedResource(SUBSCRIPTION, subscriptionGenerator) val subscriptionName = coordinator.getManagedResource(SUBSCRIPTION)?.subscriptionName ?: throw CordaRuntimeException("Subscription could not be extracted from the lifecycle coordinator.") - subscriptionRegistration.getAndSet(coordinator.followStatusChangesByName(setOf(subscriptionName)))?.close() + subscriptionRegistration.getAndSet(coordinator.followStatusChangesByName(setOf(subscriptionName))) coordinator.getManagedResource(SUBSCRIPTION)?.start() }