Boris,
Thanks for your review. Responses are inline.
>> I think we also need MetadataStorage one (details may be worked out
later) to hide the locality storage implementation details.
- Agree, my initial proposal had LocalityManager interface which
was logically similar to MetaDataStore. Changed the interface name to
MetadataStore and updated it everywhere in the proposal.
>> Instead of using physical hostname we should stick to the
LocationId, since some VMs may be running multiple processors on a single
physical host.
- Agree. This is taken into account and we have a pluggable
abstraction to generate it for different execution environments.
>> I think, though, using function names doesn't give enough clarity on
what is going on. May be we should add more explanation.
- Updated the proposal based upon this comment.
>> First diagram describes how local storage works. Please label it as
such.
- Updated the proposal to address this comment.
>> Some time the perfect mapping to the same Locality is not
possible(especially when a task dies and is distributed between other
tasks).
- Yes, this is worst case scenario where the task will be
assigned to any processor when there’re no live processors registered from
it’s preferred host.
Thanks.