private Set createEntriesSet(IteratorType type) throws ForceReattemptException { ConcurrentParallelGatewaySenderQueue q = getHDFSQueue(); if (q == null) return Collections.emptySet(); HDFSBucketRegionQueue brq = q.getBucketRegionQueue(this.owner.getPartitionedRegion(), owner.getId()); return new HDFSEntriesSet(owner, brq, owner.getHoplogOrganizer(), type, refs); }
private Set createEntriesSet(IteratorType type) throws ForceReattemptException { ConcurrentParallelGatewaySenderQueue q = getHDFSQueue(); if (q == null) return Collections.emptySet(); HDFSBucketRegionQueue brq = q.getBucketRegionQueue(this.owner.getPartitionedRegion(), owner.getId()); return new HDFSEntriesSet(owner, brq, owner.getHoplogOrganizer(), type, refs); }
private HDFSBucketRegionQueue getQueue(PartitionedRegion pr, int bucketId) throws ForceReattemptException { AsyncEventQueueImpl aeq = pr.getHDFSEventQueue(); AbstractGatewaySender gw = (AbstractGatewaySender) aeq.getSender(); AbstractGatewaySenderEventProcessor ep = gw.getEventProcessor(); if (ep == null) { return null; } ConcurrentParallelGatewaySenderQueue queue = (ConcurrentParallelGatewaySenderQueue) ep.getQueue(); return queue.getBucketRegionQueue(pr, bucketId); }
private HDFSBucketRegionQueue getQueue(PartitionedRegion pr, int bucketId) throws ForceReattemptException { AsyncEventQueueImpl aeq = pr.getHDFSEventQueue(); ParallelGatewaySenderImpl gw = (ParallelGatewaySenderImpl) aeq.getSender(); AbstractGatewaySenderEventProcessor ep = gw.getEventProcessor(); if (ep == null) { return null; } ConcurrentParallelGatewaySenderQueue queue = (ConcurrentParallelGatewaySenderQueue) ep.getQueue(); return queue.getBucketRegionQueue(pr, bucketId); }
@Override public int sizeEstimate() { if (isHDFSReadWriteRegion()) { try { checkForPrimary(); ConcurrentParallelGatewaySenderQueue q = getHDFSQueue(); if (q == null) return 0; int hdfsBucketRegionSize = q.getBucketRegionQueue( partitionedRegion, getId()).size(); int hoplogEstimate = (int) getHoplogOrganizer().sizeEstimate(); if (logger.isDebugEnabled()) { logger.debug("for bucket " + getName() + " estimateSize returning " + (hdfsBucketRegionSize + hoplogEstimate)); } return hdfsBucketRegionSize + hoplogEstimate; } catch (ForceReattemptException e) { throw new PrimaryBucketException(e.getLocalizedMessage(), e); } } return size(); }
@Override public int sizeEstimate() { if (isHDFSReadWriteRegion()) { try { checkForPrimary(); ConcurrentParallelGatewaySenderQueue q = getHDFSQueue(); if (q == null) return 0; int hdfsBucketRegionSize = q.getBucketRegionQueue( partitionedRegion, getId()).size(); int hoplogEstimate = (int) getHoplogOrganizer().sizeEstimate(); if (getLogWriterI18n().fineEnabled()) { getLogWriterI18n().fine("for bucket " + getName() + " estimateSize returning " + (hdfsBucketRegionSize + hoplogEstimate)); } return hdfsBucketRegionSize + hoplogEstimate; } catch (ForceReattemptException e) { throw new PrimaryBucketException(e.getLocalizedMessage(), e); } } return size(); }
private ConcurrentParallelGatewaySenderQueue getHDFSQueue() throws ForceReattemptException { if (this.hdfsQueue == null) { String asyncQId = this.owner.getPartitionedRegion().getHDFSEventQueueName(); final AsyncEventQueueImpl asyncQ = (AsyncEventQueueImpl)this.owner.getCache().getAsyncEventQueue(asyncQId); final ParallelGatewaySenderImpl gatewaySender = (ParallelGatewaySenderImpl)asyncQ.getSender(); AbstractGatewaySenderEventProcessor ep = gatewaySender.getEventProcessor(); if (ep == null) return null; hdfsQueue = (ConcurrentParallelGatewaySenderQueue)ep.getQueue(); } // Check whether the queue has become primary here. // There could be some time between bucket becoming a primary // and underlying queue becoming a primary, so isPrimaryWithWait() // waits for some time for the queue to become a primary on this member final HDFSBucketRegionQueue brq = hdfsQueue.getBucketRegionQueue( this.owner.getPartitionedRegion(), this.owner.getId()); if (brq != null) { if (owner.getBucketAdvisor().isPrimary() && !brq.getBucketAdvisor().isPrimaryWithWait()) { InternalDistributedMember primaryHolder = brq.getBucketAdvisor() .basicGetPrimaryMember(); throw new PrimaryBucketException("Bucket " + brq.getName() + " is not primary. Current primary holder is " + primaryHolder); } } return hdfsQueue; }
private ConcurrentParallelGatewaySenderQueue getHDFSQueue() throws ForceReattemptException { if (this.hdfsQueue == null) { String asyncQId = this.owner.getPartitionedRegion().getHDFSEventQueueName(); final AsyncEventQueueImpl asyncQ = (AsyncEventQueueImpl)this.owner.getCache().getAsyncEventQueue(asyncQId); final AbstractGatewaySender gatewaySender = (AbstractGatewaySender)asyncQ.getSender(); AbstractGatewaySenderEventProcessor ep = gatewaySender.getEventProcessor(); if (ep == null) return null; hdfsQueue = (ConcurrentParallelGatewaySenderQueue)ep.getQueue(); } // Check whether the queue has become primary here. // There could be some time between bucket becoming a primary // and underlying queue becoming a primary, so isPrimaryWithWait() // waits for some time for the queue to become a primary on this member final HDFSBucketRegionQueue brq = hdfsQueue.getBucketRegionQueue( this.owner.getPartitionedRegion(), this.owner.getId()); if (brq != null) { if (owner.getBucketAdvisor().isPrimary() && !brq.getBucketAdvisor().isPrimaryWithWait()) { InternalDistributedMember primaryHolder = brq.getBucketAdvisor() .basicGetPrimaryMember(); throw new PrimaryBucketException("Bucket " + brq.getName() + " is not primary. Current primary holder is " + primaryHolder); } } return hdfsQueue; }