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

Ted Yu commented on HBASE-7414:
-------------------------------

{code}
+    if (majorVersion > 2 || (majorVersion == 2 && minorVersion >= 
PBUF_TRAILER_MINOR_VERSION)) {
+      serializeAsPB(baosDos);
...
+    expectMinorVersion(PBUF_TRAILER_MINOR_VERSION);
{code}
Here is body of expectMinorVersion:
{code}
  public void expectMinorVersion(int expected) {
    if (minorVersion != expected) {
      throw new IllegalArgumentException("Invalid HFile minor version: "
          + minorVersion + " (expected: " + expected + ")");
    }
  }
{code}
When majorVersion goes to 3, serializeAsPB() would be called where minorVersion 
can carry value other than PBUF_TRAILER_MINOR_VERSION.
So the check in expectMinorVersion() may raise IllegalArgumentException.
                
> Convert some HFile metadata to PB
> ---------------------------------
>
>                 Key: HBASE-7414
>                 URL: https://issues.apache.org/jira/browse/HBASE-7414
>             Project: HBase
>          Issue Type: Task
>          Components: HFile
>            Reporter: stack
>            Assignee: Andrew Purtell
>            Priority: Critical
>             Fix For: 0.96.0
>
>         Attachments: 7414.patch, 7414.patch
>
>
> See HBASE-7201
> Convertion should be in a manner that does not prevent our being able to read 
> old style hfiles with Writable metadata.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to