Blocking in the constructor to fetch metadata doesn't solve the problem, since metadata still needs to be periodically refreshed over time.
best, Colin On Wed, Jun 16, 2021, at 09:51, Jesse Feinman wrote: > Hi Moses, > > Specifically, on blocking in the constructor to fetch metadata, while I > like the idea of specifying the topics in the constructor and fetching > the metadata then, I think it leads to a few scenarios that could be > unexpected. First is if you try to use a topic that wasn't included in > the constructor which puts us back in the same position we're currently > in. Second, metadata is only cached for a configured period of time, if > a topic is published to infrequently then the metadata may fall out of > cache leaving us in the current situation again. And lastly, you call > this out as a con in the KIP, but a blocking constructor is very > unexpected which could result in issues like a service failing to start > up if metadata is missing. > > For those reasons, I don't think it really addresses the core of either > issue very well so it probably isn't a great option. > > Jesse >