Since the underlying create_topics function unless the operation_timeout its async (the effects of this call aren't immediately visible after the call its performed), if karapace its started on a cluster that its slow enough in creating the topic, we get an unhandled exception in the startup of the service of type:
The fix its simple, try to query from the cluster (immediately after having commanded the creation of the topic) the offsets of the topic. If the returned status its OFFSET_UNINITIALIZED we simply need to try again shortly later.
Since the underlying
create_topics
function unless theoperation_timeout
its async (the effects of this call aren't immediately visible after the call its performed), if karapace its started on a cluster that its slow enough in creating the topic, we get an unhandled exception in the startup of the service of type:The fix its simple, try to query from the cluster (immediately after having commanded the creation of the topic) the offsets of the topic. If the returned status its
OFFSET_UNINITIALIZED
we simply need to try again shortly later.About this change - What it does
References: #xxxxx
Why this way