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

Anoop Sam John commented on HBASE-19052:
----------------------------------------

bq.What happens if trailer has org.apache.hadoop.hbase.CellComparator?
No Stack.  In 1.x versions, we use KeyValue$Comparator and write that in 
HFiles.  In 2.0 we changed this to CellComparator and added above code for the 
rolling upgrade.  Now as the name again changed, the above change is fine only. 
 No files will get comparator name as org.apache.hadoop.hbase.CellComparator.  
Ya but we have the requirement like 1st upgrade to some min 1.x.y version and 
then to 2.0.  

> FixedFileTrailer should recognize CellComparatorImpl class in branch-1.x
> ------------------------------------------------------------------------
>
>                 Key: HBASE-19052
>                 URL: https://issues.apache.org/jira/browse/HBASE-19052
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Ted Yu
>            Assignee: Ted Yu
>            Priority: Critical
>             Fix For: 1.4.0, 1.3.2, 1.5.0, 1.2.7, 1.1.13
>
>         Attachments: 19052.branch-1.txt
>
>
> HBASE-18945 has gone into branch-2 .
> Let's consider rolling upgrade scenario from 1.x to 2.0 where there're three 
> servers: s1, s2, s3
> s1 is upgraded to 2.0 first. It flushes to hfile in region r1 with 
> CellComparatorImpl written in the hfile trailer.
> Somehow s1 crashes and master assigns r1 to s2 which is still running 1.x
> The following code in FixedFileTrailer would be triggered:
> {code}
>       try {
>         comparatorKlass = (Class<? extends CellComparator>) 
> Class.forName(comparatorClassName);
>       } catch (ClassNotFoundException e) {
>         throw new IOException(e);
>       }
> {code}
> since s2 is not aware of CellComparatorImpl.
> This issue is to backport CellComparatorImpl related change to branch-1.x
> Note: CellComparatorImpl wouldn't be used in write path, only in read path.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to