message: Fix core issue: for a new host with no partition, can't find it from hostParts.
diff: @@ -535,9 +535,13 @@ bool Balancer::assembleZoneParts(const std::string& groupName, HostParts& hostPa
  auto name = zoneIter->first.second;
  for (auto hostIter = hosts.begin(); hostIter != hosts.end(); hostIter++) {
  auto partIter = hostParts.find(*hostIter);
  + if (partIter == hostParts.end()) {
  + zoneParts_[it->first] = ZoneNameAndParts(name, std::vector<PartitionID>());
  + } else {
  zoneParts_[it->first] = ZoneNameAndParts(name, partIter->second);
  }
  }
  + }
  return true;
  }
  @@ -985,9 +989,13 @@ bool Balancer::collectZoneParts(const std::string& groupName,
  auto name = zoneIter->first.second;
  for (auto hostIter = hosts.begin(); hostIter != hosts.end(); hostIter++) {
  auto partIter = hostParts.find(*hostIter);
  + if (partIter == hostParts.end()) {
  + zoneParts_[it->first] = ZoneNameAndParts(name, std::vector<PartitionID>());
  + } else {
  zoneParts_[it->first] = ZoneNameAndParts(name, partIter->second);
  }
  }
  + }
  return true;
  }
  