You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Elliot Miller (Jira)" <ji...@apache.org> on 2020/08/14 19:00:00 UTC

[jira] [Comment Edited] (HBASE-24874) hbase-shell should not use ModifiableTableDescriptor directly

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

Elliot Miller edited comment on HBASE-24874 at 8/14/20, 6:59 PM:
-----------------------------------------------------------------

One of the things that fascinated me about this bug is that it only *affects the JDK 11 builds*. The JDK 8 builds work just fine. Hopefully, I'll get the chance to look into this more, but my initial guess is that this effect is a result of "JEP 181: Nest-Based Access Control," added in JDK 11 (See the release notes: [https://www.oracle.com/java/technologies/javase/jdk-11-relnote.html#JDK-8010319).]

Anyway, there are two changes that need to be made:

1. We need a new way to accept coprocessor spec strings from the alter command. I suggested a solution on this issue relating to CoprocessorDescriptors: [HBASE-20119|https://issues.apache.org/jira/browse/HBASE-20119?focusedCommentId=17178013&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-17178013]
 2. We need a new way to print table attributes in the describe command. This is easy.


was (Author: bitoffdev):
One of the things that fascinated me about this bug is that it only *affects the JDK 11 builds*. The JDK 8 builds work just fine. Hopefully, I'll get the chance to look into this more, but my initial guess is that this effect is a result of "JEP 181: Nest-Based Access Control," added in JDK 11 (See the release notes: [https://www.oracle.com/java/technologies/javase/jdk-11-relnote.html#JDK-8010319).]

Anyway, there are two changes that need to be made:

1. We need a new way to accept coprocessor spec strings from the alter command. I suggested a solution on this issue relating to CoprocessorDescriptors: [HBASE-20119|https://issues.apache.org/]
 2. We need a new way to print table attributes in the describe command. This is easy.

> hbase-shell should not use ModifiableTableDescriptor directly
> -------------------------------------------------------------
>
>                 Key: HBASE-24874
>                 URL: https://issues.apache.org/jira/browse/HBASE-24874
>             Project: HBase
>          Issue Type: Bug
>          Components: shell
>    Affects Versions: 3.0.0-alpha-1
>            Reporter: Elliot Miller
>            Assignee: Elliot Miller
>            Priority: Major
>
> HBASE-20819 prepared us for HBase 3.x by removing usages of the deprecated HTableDescriptor and HColumnDescriptor classes from the shell. However, it did use two methods from the ModifiableTableDescriptor, which was only public for compatibility/migration and was marked with {{@InterfaceAudience.Private}}. When {{ModifiableTableDescriptor}} was made private last week by HBASE-24507 it broke two hbase-shell commands (*describe* and *alter* when used to set a coprocessor) that were using methods from {{ModifiableTableDescriptor}} (these methods are not present on the general {{TableDescriptor}} interface).
> This story will remove the two references in hbase-shell to methods on the now-private {{ModifiableTableDescriptor}} class and will find appropriate replacements for the calls.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)