hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "huaxiang sun (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HBASE-17243) Reuse CompactionPartitionId and avoid creating MobFileName in PartitionedMobCompactor to avoid unnecessary new objects
Date Fri, 02 Dec 2016 18:37:58 GMT
huaxiang sun created HBASE-17243:
------------------------------------

             Summary: Reuse CompactionPartitionId and avoid creating MobFileName in PartitionedMobCompactor
to avoid unnecessary new objects
                 Key: HBASE-17243
                 URL: https://issues.apache.org/jira/browse/HBASE-17243
             Project: HBase
          Issue Type: Improvement
          Components: mob
    Affects Versions: 2.0.0
            Reporter: huaxiang sun
            Assignee: huaxiang sun
            Priority: Minor


In today's select() implementation, when it is an existing id, the new allocated object is
discarded. It should be reused. fileName is created to getStartKey and getDate(), utility
APIs can be created to directly get these fields from the string.

{code}
      } else if (allFiles || linkedFile.getLen() < mergeableSize) {
        // add all files if allFiles is true,
        // otherwise add the small files to the merge pool
        MobFileName fileName = MobFileName.create(linkedFile.getPath().getName());
        CompactionPartitionId id = new CompactionPartitionId(fileName.getStartKey(),
          fileName.getDate());
        CompactionPartition compactionPartition = filesToCompact.get(id);
        if (compactionPartition == null) {
          compactionPartition = new CompactionPartition(id);
          compactionPartition.addFile(file);
          filesToCompact.put(id, compactionPartition);
        } else {
          compactionPartition.addFile(file);
        }
        selectedFileCount++;
      }
    }
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message