Hi all,

I'm learning data locality in Hama, and found there is a
BestEffortDataLocalTaskAllocator class for this purpose. It's a good idea
to assign task to the groom which contains its split, getGroomToSchedule()
play this role.

Well, in getGroomToSchedule(), the code like:

GroomServerStatus groom = grooms.get(location);
...
if (taskInGroom < groom.getMaxTasks() &&
location.equals(groom.getGroomHostName())) {
        return groom.getGroomHostName();
}

It seems that location.equals(groom.getGroomHostName() is always true, so
it just select the first groom which contains split? Am i right?

Thanks in advance!

Micle Bu

Reply via email to