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

Hudson commented on PHOENIX-1060:
---------------------------------

SUCCESS: Integrated in Phoenix-master #608 (See 
[https://builds.apache.org/job/Phoenix-master/608/])
PHOENIX-1060 Replace ReferencingColumn with ColumnReference(Rajeshbabu) 
(rajeshbabu: rev 44a7064bb22c4a9c3047340174f5ed646c4bf126)
* 
phoenix-core/src/main/java/org/apache/phoenix/hbase/index/covered/example/CoveredColumn.java
* 
phoenix-core/src/main/java/org/apache/phoenix/hbase/index/scanner/ScannerBuilder.java
* 
phoenix-core/src/main/java/org/apache/phoenix/hbase/index/covered/update/ColumnReference.java
* 
phoenix-core/src/main/java/org/apache/phoenix/hbase/index/util/ReadOnlyImmutableBytesPtr.java
* 
phoenix-core/src/main/java/org/apache/phoenix/hbase/index/util/IndexManagementUtil.java
* phoenix-core/src/main/java/org/apache/phoenix/util/IndexUtil.java
* phoenix-core/src/main/java/org/apache/phoenix/index/IndexMaintainer.java


> Replace ReferencingColumn with ColumnReference
> ----------------------------------------------
>
>                 Key: PHOENIX-1060
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-1060
>             Project: Phoenix
>          Issue Type: Sub-task
>            Reporter: rajeshbabu
>            Assignee: Rajeshbabu Chintaguntla
>            Priority: Minor
>             Fix For: 5.0.0, 4.3.1
>
>         Attachments: PHOENIX-1060.patch, PHOENIX-1060_v2.patch, 
> PHOENIX-1060_v3.patch
>
>
> We currently have two separate classes that represent a column family/column 
> qualifier combo: ColumnReference and ReferencingColumn. I believe the only 
> difference is that ReferencingColumn allows a backing byte array to be used 
> with an offset and length. Since ColumnReference already has an 
> ImmutableBytesPtr we can add a constructor that takes two offsets and lengths 
> for the family and qualifier and do a bit of minor refactoring (removing the 
> family and qualifier member variables and just use the familyPtr and 
> qualifierPtr ones exclusivly) so that we don't have two classes for the same 
> thing:
> {code}
> public class ColumnReference implements Comparable<ColumnReference> {
>     
>   public ColumnReference(byte[] family, int familyOffset, int familyLength, 
> byte[] qualifier, int qualifierOffset, int qualiferLength) {
>     this.familyPtr = new ImmutableBytesPtr(family, familyOffset, 
> familyLength);
>     this.qualifierPtr = new ImmutableBytesPtr(qualifier, qualifierOffset, 
> qualifierLength);
>     this.hashCode = calcHashCode(familyPtr.get(), qualifierPtr.get());
>   }
> {code}
> Another useful addition would be to implement Writable so we don't duplicate 
> the serialization logic.



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

Reply via email to