fix overloading of segments

This commit is contained in:
Fangjin Yang 2012-12-14 22:55:12 -08:00
parent b0e1f90e35
commit 76807ae00e
2 changed files with 8 additions and 3 deletions

View File

@ -99,9 +99,9 @@ public class ServerHolder implements Comparable<ServerHolder>
return (server.getSegment(segment.getIdentifier()) != null);
}
public boolean containsSegment(DataSegment segment)
public boolean isLoadingSegment(DataSegment segment)
{
return isServingSegment(segment) || peon.getSegmentsToLoad().contains(segment);
return peon.getSegmentsToLoad().contains(segment);
}
@Override

View File

@ -83,7 +83,12 @@ public abstract class LoadRule implements Rule
);
break;
}
if (holder.containsSegment(segment)) {
if (holder.isServingSegment(segment)) {
assignedServers.add(holder);
continue;
}
if (holder.isLoadingSegment(segment)) {
++actualReplicants;
assignedServers.add(holder);
continue;
}