Open awoSYS opened 2 years ago
@awoSYS Relying only on a local cache of service registry entries is something I want Kalix to support, so I'm not going to force the library user to use any particular plugin. What I could do is have the exception list all sources it consulted and provide a hint about the plugin if it isn't being used.
@emanuelpalm yeah, these two things would certainly help!
I've found another case, in which a missing call of a builder method resulted in hard-to-understand missbehavior (similar to this comment).
I've built an
ArSystem
like this:Then I tried to consume a provided service like this:
This always resulted in
ServiceNotFoundException
s with the textNo service with the criteria xxx could be found
or something like that. It took me days to figure out, that actually no message was sent to the orchestrator at all, but some default method in a Kalix interface returned an empty list which got treated like an empty orchestrator reply, resulting in theServiceNotFoundException
. My mistake was, that I'd forgotten to call theplugins()
method when building theconsumerSystem
, so the system didn't connect to the ArrowHead core services.I'd propose at least to have more obvious error message in case no connection to the AH system exists. Or even better would be some kind of code/compile time error indicating the missing builder method call (as discussed similarly in the above mentioned issue).