I'm not sure why we need to set the paralellism twice? we reach into the graph to get the paralellism to be used for the summer node. So its only done the once. The documented/user controlled variable is the Multiplier.

When would we query storm? Would it give us a constant value or just the number of ones running right then. We hand off the tuple to be routed so I don't believe we can get the id. 

Trying to message the nodes directly would increase the complexity of this hugely and introduce issues around how storm starts up its nodes and failure handling.


I'm not sure I really follow the problem here tbh, we keep the space to be a constant factor of the number of summer bolts to be scheduled, and then let storm do its consistent hashing to pick the actual one. So given topologies are fixed in size/layout this is a constant. We over-provision over that space in case there are any hot edge cases so it should be still a good distribution.