private PartitionMemberInfoImpl buildDetails(InternalDistributedMember id, float weight,
      long localMaxMemory, long[] bucketLoad, long[] primaryBucketLoad) {
    PRLoad load1 = new PRLoad(bucketLoad.length, weight);
    int size = 0;
    int primaryCount = 0;
    int bucketCount = 0;

    for (int i = 0; i < bucketLoad.length; i++) {
      load1.addBucket(i, bucketLoad[i], primaryBucketLoad[i]);
      size += bucketLoad[i];
      if (bucketLoad[i] != 0) {
        bucketCount++;
      }
      if (primaryBucketLoad[i] != 0) {
        primaryCount++;
      }
    }
    return new PartitionMemberInfoImpl(id, localMaxMemory, size,
        bucketCount, primaryCount, load1, bucketLoad);
  }
Test to make sure than redundancy satisfaction ignores offline members
geode-core/src/test/java/org/apache/geode/internal/cache/partitioned/rebalance/PartitionedRegionLoadModelJUnitTest.java