[ 
https://issues.apache.org/jira/browse/HBASE-17243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15716028#comment-15716028
 ] 

Matteo Bertozzi commented on HBASE-17243:
-----------------------------------------

do the _END_INDEX constants needs to be public? it seems something that only 
the MobFileName should know about.

the constructor new CompactionPartitionId("", "") with the two empty string 
looks a bit weird, maybe add an empty constructor since now the object is 
mutable.

> 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
>         Attachments: HBASE-17243-master-001.patch
>
>
> 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)

Reply via email to