pnoltes commented on code in PR #452:
URL: https://github.com/apache/celix/pull/452#discussion_r1045130547


##########
bundles/cxx_remote_services/integration/src/TestExportImportRemoteServiceFactory.cc:
##########
@@ -263,13 +263,16 @@ class CalculatorImportServiceFactory final : public 
celix::rsa::IImportServiceFa
         auto& cmp = 
ctx->getDependencyManager()->createComponent(std::make_unique<ImportedCalculator>(logHelper));
         
cmp.createServiceDependency<pubsub_publisher>(PUBSUB_PUBLISHER_SERVICE_NAME)
                 .setRequired(true)
+                .setStrategy(DependencyUpdateStrategy::locking)

Review Comment:
   I think I understand why the locking instead of suspend is needed.
   
   The remote pushstream and promise test is done inside a `ctx->useService` 
call and this call is executed on the Celix event thread. Because pubsub 
connection are not guaranteed to be setup before using pubsub, it can happen 
that the first calls of a stream and/or promise fail and this connections 
cannot be updated because the Celix event thread is busy.



-- 
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: dev-unsubscr...@celix.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to