[ https://issues.apache.org/jira/browse/HBASE-11437?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14054417#comment-14054417 ]
Anoop Sam John commented on HBASE-11437: ---------------------------------------- bq.Another option would be to deprecate both 'short Cell#getTagsLength' and 'int Cell#getTagsLengthUnsigned' in 0.98 and 0.99 and for 2.0.0 replace both with 'int Cell#getTagsLength'. Thus, in trunk we replace a short return type with an int and keep a reasonable method name, while respecting deprecation convention. What do you think? That will make the API clean in trunk atleast. Only thing is this will leave 98 and 1.0.0 with 2 deprecated APIs in Cell with out any replacements available there. That will be bit strange no? > Modify cell tag handling code to treat the length as unsigned > ------------------------------------------------------------- > > Key: HBASE-11437 > URL: https://issues.apache.org/jira/browse/HBASE-11437 > Project: HBase > Issue Type: Improvement > Affects Versions: 0.98.0 > Reporter: Anoop Sam John > Assignee: Anoop Sam John > Fix For: 0.99.0, 0.98.5, 2.0.0 > > Attachments: HBASE-11437.patch, HBASE-11437.patch > > > We store each tag's length and total tags length with 2 bytes in KeyValue > buffer, HFiles etc and we treat these lengths as short through out the code. > So the max length can be Short.MAX_VALUE. We can treat these lengths as > unsigned and +ve always. So we can actually treat these lengths as int and > store with 2 bytes so that the max length can reach 65535. -- This message was sent by Atlassian JIRA (v6.2#6252)