guozhangwang commented on pull request #11868:
URL: https://github.com/apache/kafka/pull/11868#issuecomment-1064634922


   @wcarlson5 @ableegoldman I'm wondering if we could still have live lock 
scenarios like this: say we have two topologies A and B, and two threads a and 
b each on a different KS instance. And each thread tries to remove one topology 
at a time, getting the future to make sure it is cleaned up, BUT they did it in 
a different order.
   
   1) Thread a calls `remove(A)` and gets a futureA.
   2) Thread b calls `remove(B)` and gets a futureB.
   3) Thread a calls `futureA. get()` trying to delete offsets, and after that 
it tries to `remove(B)`, but gets blocked on topology A not removed by thread b 
yet.
   4) Thread b calls `futureB. get()` trying to delete offsets, and after that 
it tries to `remove(A)`, but gets blocked on topology B not removed by thread a 
yet.
   
   Would that be a concern?


-- 
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.

To unsubscribe, e-mail: jira-unsubscr...@kafka.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to