ableegoldman commented on pull request #10543: URL: https://github.com/apache/kafka/pull/10543#issuecomment-823549804
Thanks for the draft -- I haven't looked through it in detail but I think I got the gist of it. One thing I’m wondering is whether we need to track down and update each and every individual source of a StreamsException, which is a long list that will only grow over time, or if it would be easier to just catch and wrap/convert these StreamsExceptions at the highest level in which you can still distinguish the source task. I worry that doing it at the lowest level like this is too prone to things slipping through: even if we gathered every single source exception now, new PRs will add new causes of exception and we can't rely on every single person knowing, and remembering, to incorporate this new feature. Plus, it'll be somewhat unmanageable to percolate this NamedTopology information everywhere throughout Streams. If we can find a way to keep it isolated to a few top-level classes then I think we'll be in better shape, and much more future proof. Let's discuss it during the sync today but I'm thinking the only classes who probably need to know about any of this are StreamThread, TaskManager, StreamsPartitionAssignor, etc -- 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org