wcarlson5 commented on pull request #11278:
URL: https://github.com/apache/kafka/pull/11278#issuecomment-920174685


   @guozhangwang That is a really good point. Maybe we should more be specific. 
 What if each topology could request a percentage of the total cache? If a 
request made the total exceed 99% the request would be rejected. Any unclaimed 
cache would be split among the topologies that did not claim any. A topology 
could lower their cache size if they want to make space for a new topology.
   
   1. If A requests 50% it gets it an the rest is unused
   2. B joins but does not request so it gets the other 50
   3. C joins but request 75% so it fails. C then requests 25% so now A has 
50%, B 25% and C 25%
   4. D joins without a request so now  A has 50%, B 12%, C 25% and D 13%
   5. A reduces its request to 25% now all have 25%
   6. E joins and requests 0%, not using any cache and all other topologies are 
unchanged
   
   I think that should work. now we have both an upper bound on total memory 
and a minimum guarantee  


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