Temporal docker container readiness check

Hi, I have some sort of timing-related issue when I try to use Temporal docker container (1.8.2)
I use it with the testcontainers Java library and need some sort of criteria of container’s readiness.
I can see in the logs that it emits “Default namespace registration complete.” message and that’s all.
If I use that as criteria for readiness, I get very strange behaviour:

  1. a separate grpc request for “default” namespace runs successfully and returns its description.
  2. however, if I try to start a workflow - I get an error (“default namespace not found”). If I wait 10-20 secs before starting - all works OK. But I don’t see any logs in the container output during this time…

Is there any other logic that I can use to make sure that container has started and ready to execute workflows?
Thanks!

At this point calling DescribeNamespace until it is available is the best option.

When these issues (#453 and #1336) are resolved the experience is going to improve.

Well, the problem is that DescribeNamespace runs OK and returns all relevant data. (That’s what I meant in my point 1)

Then sleep is the best way to deal with it :frowning:

OK, thanks a lot! At least I know that there’s nothing else I can do except a delay :wink:

I tried to use testcontainers with Temporal because the behaviour of TestWorkflowEnvironment (in java sdk) sometimes differs from the “real” temporal… (see the GH issue I opened today: Duplicate concurrent workflow - hangs on completion · Issue #456 · temporalio/sdk-java · GitHub)