[jira] [Comment Edited] (HBASE-19116) Currently the tail of hfiles with CellComparator* classname makes it so hbase1 can't open hbase2 written hfiles; fix

2017-12-20 Thread stack (JIRA)

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

stack edited comment on HBASE-19116 at 12/20/17 7:25 PM:
-

Above stack trace doesn't belong in this issue. Let me move it to its own (let 
me try [~ram_krish] suggestion), HBASE-19567


was (Author: stack):
Above stack trace doesn't belong in this issue. Let me move it to its own (let 
me try [~ram_krish] suggestion)

> Currently the tail of hfiles with CellComparator* classname makes it so 
> hbase1 can't open hbase2 written hfiles; fix
> 
>
> Key: HBASE-19116
> URL: https://issues.apache.org/jira/browse/HBASE-19116
> Project: HBase
>  Issue Type: Sub-task
>  Components: HFile, migration
>Reporter: stack
>Assignee: stack
>Priority: Critical
> Fix For: 2.0.0-beta-2
>
>
> See tail of HBASE-19052 for discussion which concludes we should try and make 
> it so operators do not have to go to latest hbase version before they 
> upgrade, at least if we can avoid it.
> The necessary change of our default comparator from KV to Cell naming has 
> hfiles with tails that have the classname CellComparator in them in place of 
> KeyValueComparator. If an hbase1 tries to open them, it will fail not having 
> a CellComparator in its classpath (We have name of comparator in tail because 
> different files require different comparators... perhaps we write an alias 
> instead of a class one day... TODO). HBASE-16189 and HBASE-19052 are about 
> trying to carry knowledge of hbase2 back to hbase1, a brittle approach making 
> it so operators will have to upgrade to the latest branch-1 before they can 
> go to hbase2.
> This issue is about undoing our writing of an incompatible (to hbase1) tail, 
> not unless we really have to (and it sounds like we could do without writing 
> an incompatible tail) to see if we can avoid requiring operators go to 
> lastest branch-1 (we may end up needing this but lets a have a really good 
> reason for it if we do).
> Oh, let this filing be an answer to our [~anoop.hbase]'s old high-level 
> question over in HBASE-16189:
> bq. ...means when rolling upgrade done to 2.0, first users have to upgrade to 
> some 1.x versions which is having this fix and then to 2.0.. What do you guys 
> think Whether we should avoid this kind of indirection? cc Enis Soztutar, 
> Stack, Ted Yu, Matteo Bertozzi
> Yeah, lets try to avoid this if we can...



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


[jira] [Comment Edited] (HBASE-19116) Currently the tail of hfiles with CellComparator* classname makes it so hbase1 can't open hbase2 written hfiles; fix

2017-11-06 Thread Mike Drob (JIRA)

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

Mike Drob edited comment on HBASE-19116 at 11/6/17 5:13 PM:


Ah, so a rolling upgrade situation?

Edit: Yes, ok, I see that in the original description now. Thanks for 
clarifying.


was (Author: mdrob):
Ah, so a rolling upgrade situation?

> Currently the tail of hfiles with CellComparator* classname makes it so 
> hbase1 can't open hbase2 written hfiles; fix
> 
>
> Key: HBASE-19116
> URL: https://issues.apache.org/jira/browse/HBASE-19116
> Project: HBase
>  Issue Type: Sub-task
>  Components: HFile, migration
>Reporter: stack
>Assignee: stack
>Priority: Critical
> Fix For: 2.0.0-beta-1
>
>
> See tail of HBASE-19052 for discussion which concludes we should try and make 
> it so operators do not have to go to latest hbase version before they 
> upgrade, at least if we can avoid it.
> The necessary change of our default comparator from KV to Cell naming has 
> hfiles with tails that have the classname CellComparator in them in place of 
> KeyValueComparator. If an hbase1 tries to open them, it will fail not having 
> a CellComparator in its classpath (We have name of comparator in tail because 
> different files require different comparators... perhaps we write an alias 
> instead of a class one day... TODO). HBASE-16189 and HBASE-19052 are about 
> trying to carry knowledge of hbase2 back to hbase1, a brittle approach making 
> it so operators will have to upgrade to the latest branch-1 before they can 
> go to hbase2.
> This issue is about undoing our writing of an incompatible (to hbase1) tail, 
> not unless we really have to (and it sounds like we could do without writing 
> an incompatible tail) to see if we can avoid requiring operators go to 
> lastest branch-1 (we may end up needing this but lets a have a really good 
> reason for it if we do).
> Oh, let this filing be an answer to our [~anoop.hbase]'s old high-level 
> question over in HBASE-16189:
> bq. ...means when rolling upgrade done to 2.0, first users have to upgrade to 
> some 1.x versions which is having this fix and then to 2.0.. What do you guys 
> think Whether we should avoid this kind of indirection? cc Enis Soztutar, 
> Stack, Ted Yu, Matteo Bertozzi
> Yeah, lets try to avoid this if we can...



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