org.apache.hadoop.hbase.regionserver.HStore.hasReferences()方法的使用及代码示例

x33g5p2x  于2022-01-20 转载在 其他  
字(3.2k)|赞(0)|评价(0)|浏览(150)

本文整理了Java中org.apache.hadoop.hbase.regionserver.HStore.hasReferences()方法的一些代码示例,展示了HStore.hasReferences()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。HStore.hasReferences()方法的具体详情如下:
包路径:org.apache.hadoop.hbase.regionserver.HStore
类名称:HStore
方法名:hasReferences

HStore.hasReferences介绍

暂无

代码示例

代码示例来源:origin: apache/hbase

  1. @Override
  2. public boolean canSplit() {
  3. this.lock.readLock().lock();
  4. try {
  5. // Not split-able if we find a reference store file present in the store.
  6. boolean result = !hasReferences();
  7. if (!result) {
  8. LOG.trace("Not splittable; has references: {}", this);
  9. }
  10. return result;
  11. } finally {
  12. this.lock.readLock().unlock();
  13. }
  14. }

代码示例来源:origin: apache/hbase

  1. /**
  2. * Determines if Store should be split.
  3. */
  4. public Optional<byte[]> getSplitPoint() {
  5. this.lock.readLock().lock();
  6. try {
  7. // Should already be enforced by the split policy!
  8. assert !this.getRegionInfo().isMetaRegion();
  9. // Not split-able if we find a reference store file present in the store.
  10. if (hasReferences()) {
  11. LOG.trace("Not splittable; has references: {}", this);
  12. return Optional.empty();
  13. }
  14. return this.storeEngine.getStoreFileManager().getSplitPoint();
  15. } catch(IOException e) {
  16. LOG.warn("Failed getting store size for {}", this, e);
  17. } finally {
  18. this.lock.readLock().unlock();
  19. }
  20. return Optional.empty();
  21. }

代码示例来源:origin: apache/hbase

  1. @Override
  2. public void postOpenDeployTasks(final PostOpenDeployContext context) throws IOException {
  3. HRegion r = context.getRegion();
  4. long masterSystemTime = context.getMasterSystemTime();
  5. rpcServices.checkOpen();
  6. LOG.info("Post open deploy tasks for " + r.getRegionInfo().getRegionNameAsString());
  7. // Do checks to see if we need to compact (references or too many files)
  8. for (HStore s : r.stores.values()) {
  9. if (s.hasReferences() || s.needsCompaction()) {
  10. this.compactSplitThread.requestSystemCompaction(r, s, "Opening Region");
  11. }
  12. }
  13. long openSeqNum = r.getOpenSeqNum();
  14. if (openSeqNum == HConstants.NO_SEQNUM) {
  15. // If we opened a region, we should have read some sequence number from it.
  16. LOG.error(
  17. "No sequence number found when opening " + r.getRegionInfo().getRegionNameAsString());
  18. openSeqNum = 0;
  19. }
  20. // Notify master
  21. if (!reportRegionStateTransition(new RegionStateTransitionContext(TransitionCode.OPENED,
  22. openSeqNum, masterSystemTime, r.getRegionInfo()))) {
  23. throw new IOException(
  24. "Failed to report opened region to master: " + r.getRegionInfo().getRegionNameAsString());
  25. }
  26. triggerFlushInPrimaryRegion(r);
  27. LOG.debug("Finished post open deploy task for " + r.getRegionInfo().getRegionNameAsString());
  28. }

代码示例来源:origin: harbby/presto-connectors

  1. @Override
  2. public boolean canSplit() {
  3. this.lock.readLock().lock();
  4. try {
  5. // Not split-able if we find a reference store file present in the store.
  6. boolean result = !hasReferences();
  7. if (!result && LOG.isDebugEnabled()) {
  8. LOG.debug("Cannot split region due to reference files being there");
  9. }
  10. return result;
  11. } finally {
  12. this.lock.readLock().unlock();
  13. }
  14. }

代码示例来源:origin: harbby/presto-connectors

  1. @Override
  2. public byte[] getSplitPoint() {
  3. this.lock.readLock().lock();
  4. try {
  5. // Should already be enforced by the split policy!
  6. assert !this.getRegionInfo().isMetaRegion();
  7. // Not split-able if we find a reference store file present in the store.
  8. if (hasReferences()) {
  9. return null;
  10. }
  11. return this.storeEngine.getStoreFileManager().getSplitPoint();
  12. } catch(IOException e) {
  13. LOG.warn("Failed getting store size for " + this, e);
  14. } finally {
  15. this.lock.readLock().unlock();
  16. }
  17. return null;
  18. }

相关文章

HStore类方法