private static int getNumberOfBuckets(PartitionedRegion pr) { if (pr.isFixedPartitionedRegion()) { int numBuckets = 0; Set<FixedPartitionAttributesImpl> fpaSet = new HashSet<FixedPartitionAttributesImpl>( pr.getRegionAdvisor().adviseAllFixedPartitionAttributes()); if (pr.getFixedPartitionAttributesImpl() != null) { fpaSet.addAll(pr.getFixedPartitionAttributesImpl()); } for (FixedPartitionAttributesImpl fpa : fpaSet) { numBuckets = numBuckets + fpa.getNumBuckets(); } return numBuckets; } return pr.getTotalNumberOfBuckets(); }
if (fpa.getPartitionName().equals(partition)) { isPartitionAvailable = true; partitionNumBuckets = fpa.getNumBuckets(); startingBucketID = fpa.getStartingBucketID(); break; if (fpa.getPartitionName().equals(partition)) { isPartitionAvailable = true; partitionNumBuckets = fpa.getNumBuckets(); startingBucketID = fpa.getStartingBucketID(); break;
int numSecondaries = 0; for (FixedPartitionAttributes otherfpa : allSameFPAs) { if (fpa.getNumBuckets() != otherfpa.getNumBuckets()) { throw new IllegalStateException( String.format( "For region %s,for partition %s, num-buckets are not same (%s, %s)across nodes.", this.pr.getName(), fpa.getPartitionName(), fpa.getNumBuckets(), otherfpa.getNumBuckets()));
private void updatePartitionMap(PartitionRegionConfig prConfig) { int prId = prConfig.getPRId(); PartitionedRegion pr = null; try { pr = PartitionedRegion.getPRFromId(prId); if (pr != null) { Map<String, Integer[]> partitionMap = pr.getPartitionsMap(); for (FixedPartitionAttributesImpl fxPrAttr : prConfig.getElderFPAs()) { partitionMap.put(fxPrAttr.getPartitionName(), new Integer[] {fxPrAttr.getStartingBucketID(), fxPrAttr.getNumBuckets()}); } } } catch (PRLocallyDestroyedException e) { logger.debug("PRLocallyDestroyedException : Region ={} is locally destroyed on this node", prConfig.getPRId(), e); } } }
if (fpa.getStartingBucketID() > largestStartBucId) { largestStartBucId = fpa.getStartingBucketID(); startingBucketID = largestStartBucId + fpa.getNumBuckets(); startingBucketID += fpaImpl.getNumBuckets(); for (FixedPartitionAttributesImpl fxPrAttr : fpaList) { this.partitionsMap.put(fxPrAttr.getPartitionName(), new Integer[] {fxPrAttr.getStartingBucketID(), fxPrAttr.getNumBuckets()});
fpa.setStartingBucketID(this.diskRegion.getStartingBucketId()); partitionedRegion.getPartitionsMap().put(fpa.getPartitionName(), new Integer[] {fpa.getStartingBucketID(), fpa.getNumBuckets()});