hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "stack (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-14998) Unify synchronous and asynchronous methods in Admin and cleanup
Date Tue, 12 Sep 2017 05:57:00 GMT

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

stack commented on HBASE-14998:
-------------------------------

All @deprecated 1.0.0 stuff has been removed.

isTableAvailable(TableName tableName, byte[][] splitKeys) should be removed, because it is
weird? [~enis]? Even the single arg isTableAvailable is weird. What do you do if it says 'no'.

Deprecated getAlterStatus in 2.0.0 for removal in 3.0.0. Updated javadoc to talk about 'modify'.
State getAlterStatus is going away because you can get a future on an operation now.

Regards 'alter' in the shell, it seems to claim it does more than just modify; in help it
says: "You can use the alter command to add, modify or delete column families or change table
configuration options...."

On review, this one is a little awkward... i.e. list a single descriptor in place of the get
but its about changing the HTD to TD...  so not much can do..

  /**
   * Method for getting the tableDescriptor
   *
   * @param tableName as a {@link TableName}
   * @return the read-only tableDescriptor
   * @throws org.apache.hadoop.hbase.TableNotFoundException
   * @throws IOException if a remote or network exception occurs
   * @deprecated since 2.0 version and will be removed in 3.0 version.
   *             use {@link #listTableDescriptor(TableName)}
   */
  @Deprecated
  HTableDescriptor getTableDescriptor(final TableName tableName)
      throws TableNotFoundException, IOException;

  /**
   * Method for getting the tableDescriptor
   *
   * @param tableName as a {@link TableName}
   * @return the tableDescriptor
   * @throws org.apache.hadoop.hbase.TableNotFoundException
   * @throws IOException if a remote or network exception occurs
   */
  TableDescriptor listTableDescriptor(final TableName tableName)
      throws TableNotFoundException, IOException;

The naming -- adding an async when async seems to be done right now. There are some methods
w/o the async suffix that are async but they have been deprecated.

There is more to do. There is some crazy stuff in Admin...

Let me do another pass in morning.


isMasterInMaintenanceMode



> Unify synchronous and asynchronous methods in Admin and cleanup
> ---------------------------------------------------------------
>
>                 Key: HBASE-14998
>                 URL: https://issues.apache.org/jira/browse/HBASE-14998
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Enis Soztutar
>            Assignee: Balazs Meszaros
>            Priority: Blocker
>             Fix For: 2.0.0-alpha-3
>
>
> Admin has a bunch of methods, some are asnyc, some are sync. Needs some unification in
method naming, and method signatures. 
>  - We use modify and alter interchangeably. Pick one and stick with it (modifyTable(),
versus getAlterStatus()). Shell uses {{alter}}. 
>  - Remove getAlterStatus(), should not be needed. 
>  - remove already deprecated methods 
>  -  isTableAvailable(TableName tableName, byte[][] splitKeys) should be removed. 
>  - Consistently use Aysnc as a prefix for all async methods. 
>  - Other ideas? 



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

Mime
View raw message