You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Jonathan Gray (JIRA)" <ji...@apache.org> on 2011/09/22 20:47:26 UTC
[jira] [Created] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
HbaseObjectWritable code is a byte, we will eventually run out of codes
-----------------------------------------------------------------------
Key: HBASE-4459
URL: https://issues.apache.org/jira/browse/HBASE-4459
Project: HBase
Issue Type: Bug
Components: io
Reporter: Jonathan Gray
Priority: Critical
Fix For: 0.94.0
There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "ramkrishna.s.vasudevan (Commented) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13131870#comment-13131870 ]
ramkrishna.s.vasudevan commented on HBASE-4459:
-----------------------------------------------
Commited to trunk and 0.92 branch. Thanks for the review Stack and Jon.
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Assignee: ramkrishna.s.vasudevan
> Priority: Critical
> Fix For: 0.92.0
>
> Attachments: 4459-v2.patch.txt, 4459.txt
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "Hudson (Commented) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13132114#comment-13132114 ]
Hudson commented on HBASE-4459:
-------------------------------
Integrated in HBase-TRUNK #2346 (See [https://builds.apache.org/job/HBase-TRUNK/2346/])
HBASE-4459 HbaseObjectWritable code is a byte, we will eventually run out of codes
ramkrishna :
Files :
* /hbase/trunk/CHANGES.txt
* /hbase/trunk/src/main/java/org/apache/hadoop/hbase/io/HbaseObjectWritable.java
* /hbase/trunk/src/test/java/org/apache/hadoop/hbase/io/TestHbaseObjectWritable.java
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Assignee: ramkrishna.s.vasudevan
> Priority: Critical
> Fix For: 0.92.0
>
> Attachments: 4459-v2.patch.txt, 4459.txt
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "Ted Yu (Commented) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13126312#comment-13126312 ]
Ted Yu commented on HBASE-4459:
-------------------------------
So this means we can replace out.writeByte(code) in HBaseObjectWritable.writeClassCode() with WritableUtils.writeVInt
Shall we pull this JIRA into 0.92 ?
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Priority: Critical
> Fix For: 0.94.0
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "Todd Lipcon (Commented) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13116333#comment-13116333 ]
Todd Lipcon commented on HBASE-4459:
------------------------------------
The scheme in WritableUtils.writeVInt looks like it's backwards-compatible for small positive bytes:
{code}
if (i >= -112 && i <= 127) {
stream.writeByte((byte)i);
return;
}
{code}
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Priority: Critical
> Fix For: 0.94.0
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "ramkrishna.s.vasudevan (Updated) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ramkrishna.s.vasudevan updated HBASE-4459:
------------------------------------------
Status: Open (was: Patch Available)
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Assignee: ramkrishna.s.vasudevan
> Priority: Critical
> Fix For: 0.92.0
>
> Attachments: 4459-v2.patch.txt, 4459.txt
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Assigned] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "ramkrishna.s.vasudevan (Assigned) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ramkrishna.s.vasudevan reassigned HBASE-4459:
---------------------------------------------
Assignee: ramkrishna.s.vasudevan
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Assignee: ramkrishna.s.vasudevan
> Priority: Critical
> Fix For: 0.92.0
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "dhruba borthakur (Commented) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13116155#comment-13116155 ]
dhruba borthakur commented on HBASE-4459:
-----------------------------------------
@Todd: which "varint" are you referring to here?
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Priority: Critical
> Fix For: 0.94.0
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "Jonathan Gray (Commented) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13126854#comment-13126854 ]
Jonathan Gray commented on HBASE-4459:
--------------------------------------
- Why is Queue added within the scope of this JIRA? Seems unrelated.
- Can you remove the unnecessary import re-org at the top?
- Can we have a unit test which shows the backwards compatibility of this?
Thanks for working on this Ram.
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Assignee: ramkrishna.s.vasudevan
> Priority: Critical
> Fix For: 0.92.0
>
> Attachments: 4459.txt
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "stack (Commented) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13131185#comment-13131185 ]
stack commented on HBASE-4459:
------------------------------
+1
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Assignee: ramkrishna.s.vasudevan
> Priority: Critical
> Fix For: 0.92.0
>
> Attachments: 4459-v2.patch.txt, 4459.txt
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "ramkrishna.s.vasudevan (Updated) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ramkrishna.s.vasudevan updated HBASE-4459:
------------------------------------------
Status: Patch Available (was: Open)
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Assignee: ramkrishna.s.vasudevan
> Priority: Critical
> Fix For: 0.92.0
>
> Attachments: 4459.txt
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "Hudson (Commented) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13132564#comment-13132564 ]
Hudson commented on HBASE-4459:
-------------------------------
Integrated in HBase-0.92 #75 (See [https://builds.apache.org/job/HBase-0.92/75/])
HBASE-4459 HbaseObjectWritable code is a byte, we will eventually run out of codes
ramkrishna :
Files :
* /hbase/branches/0.92/CHANGES.txt
* /hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/io/HbaseObjectWritable.java
* /hbase/branches/0.92/src/test/java/org/apache/hadoop/hbase/io/TestHbaseObjectWritable.java
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Assignee: ramkrishna.s.vasudevan
> Priority: Critical
> Fix For: 0.92.0
>
> Attachments: 4459-v2.patch.txt, 4459.txt
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "ramkrishna.s.vasudevan (Updated) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ramkrishna.s.vasudevan updated HBASE-4459:
------------------------------------------
Status: Patch Available (was: Open)
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Assignee: ramkrishna.s.vasudevan
> Priority: Critical
> Fix For: 0.92.0
>
> Attachments: 4459-v2.patch.txt, 4459.txt
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "Ted Yu (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13113136#comment-13113136 ]
Ted Yu commented on HBASE-4459:
-------------------------------
+1 on making code of type short.
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Priority: Critical
> Fix For: 0.94.0
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "Jonathan Gray (Commented) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13126332#comment-13126332 ]
Jonathan Gray commented on HBASE-4459:
--------------------------------------
I'm fine with pulling into 0.92 since it doesn't break any compatibility.
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Priority: Critical
> Fix For: 0.92.0
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "Todd Lipcon (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13113413#comment-13113413 ]
Todd Lipcon commented on HBASE-4459:
------------------------------------
We probably have to worry that someone has stored HBaseObjectWritables somewhere persistent, in which case just making the type a short is not backwards-compatible. Perhaps we should make it a varint, which I believe will encode the same for any existing data, but would be multibyte-capable?
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Priority: Critical
> Fix For: 0.94.0
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "ramkrishna.s.vasudevan (Updated) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ramkrishna.s.vasudevan updated HBASE-4459:
------------------------------------------
Resolution: Fixed
Status: Resolved (was: Patch Available)
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Assignee: ramkrishna.s.vasudevan
> Priority: Critical
> Fix For: 0.92.0
>
> Attachments: 4459-v2.patch.txt, 4459.txt
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "ramkrishna.s.vasudevan (Updated) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ramkrishna.s.vasudevan updated HBASE-4459:
------------------------------------------
Attachment: 4459-v2.patch.txt
Latest patch with testcases.
Text and byte[] objects is persisted using current HbaseObjectWritable and read back with enhanced HbaseObjectWritable.(new patch)
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Assignee: ramkrishna.s.vasudevan
> Priority: Critical
> Fix For: 0.92.0
>
> Attachments: 4459-v2.patch.txt, 4459.txt
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "ramkrishna.s.vasudevan (Updated) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ramkrishna.s.vasudevan updated HBASE-4459:
------------------------------------------
Attachment: 4459.txt
Pls review the patch.
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Assignee: ramkrishna.s.vasudevan
> Priority: Critical
> Fix For: 0.92.0
>
> Attachments: 4459.txt
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "stack (Commented) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13126864#comment-13126864 ]
stack commented on HBASE-4459:
------------------------------
What is this about?
{code}
+ } else if (Queue.class.isAssignableFrom(declClass)) {
+ Queue queue = (Queue)instanceObj;
+ int length = queue.size();
+ out.writeInt(length);
+ Object obj;
+ for (int i = 0; i < length; i++) {
+ obj = queue.remove();
+ writeObject(out, obj, obj.getClass(), conf);
+ }
{code}
Is it necessary to this patch?
And this:
{code}
+ } else if (Queue.class.isAssignableFrom(declaredClass)) {
+ int length = in.readInt();
+ instance = new ConcurrentLinkedQueue();
+ for (int i = 0; i < length; i++) {
+ ((Queue)instance).add(readObject(in, conf));
+ }
{code}
Looks good Ram. Any chance of a test to prove it works the way it used to?
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Assignee: ramkrishna.s.vasudevan
> Priority: Critical
> Fix For: 0.92.0
>
> Attachments: 4459.txt
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HBASE-4459) HbaseObjectWritable code is a byte,
we will eventually run out of codes
Posted by "Ted Yu (Updated) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-4459?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ted Yu updated HBASE-4459:
--------------------------
Fix Version/s: (was: 0.94.0)
0.92.0
> HbaseObjectWritable code is a byte, we will eventually run out of codes
> -----------------------------------------------------------------------
>
> Key: HBASE-4459
> URL: https://issues.apache.org/jira/browse/HBASE-4459
> Project: HBase
> Issue Type: Bug
> Components: io
> Reporter: Jonathan Gray
> Priority: Critical
> Fix For: 0.92.0
>
>
> There are about 90 classes/codes in HbaseObjectWritable currently and Byte.MAX_VALUE is 127. In addition, anyone wanting to add custom classes but not break compatibility might want to leave a gap before using codes and that's difficult in such limited space.
> Eventually we should get rid of this pattern that makes compatibility difficult (better client/server protocol handshake) but we should probably at least bump this to a short for 0.94.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira