
Andreas Savva wrote:
My concern here isn't so much that enumerating a set of hostnames and choosing N of them isn't useful. It is rather that this is a case of an implicit choice rule different from our default "satisfy all" rule.
In giving the example below, I was trying to suggest that we did support part of the use case and could perhaps claim that the rest can be satisfied when composing jsdl with some other operator language.
If the consensus is that having a small number of instances of this rule (I can think of another place where we have a variant) is a good thing then I might go along with it. But I feel it is clearer (though perhaps inconvenient) not to have such exceptions.
My inclination is to think of the resource satisfaction rule as being that "all the requested resources must be available/allocated". That does not say that the job has to actually use them all, but it does define the space within which the job can rattle around. If a hostname identifies a set of machines in some sense, then it can be taken as referring to an arbitrary subset of those machines (as constrained by the other terms and any policies enforced) but that's simply because we're not defining what it means to claim the resource that is an externally-defined set of machines. Anything more complex than "claim all the resources" requires some kind of resource selection and preferencing (?) language, and is thankfully out of our scope. :-) Donal.