Commit Graph

470 Commits

Author SHA1 Message Date
Michael Stack ba3463d9de HBASE-23055 Alter hbase:meta (#1043)
Make hbase:meta region schema dynamic.

Patch has been under development a good while and its focus has changed
a few times so its bloated with fixup from older versions.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/TableStateManager.java
M hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/ZNodePaths.java
 Shut down access to internals and removed unused methods.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/EnableTableProcedure.java
 Cleanup/refactor section on replica-handling.

M hbase-server/src/main/java/org/apache/hadoop/hbase/util/FSTableDescriptors.java
 Get hbase:meta schema from filesystem rather than from hard-coding.
2020-01-21 15:02:40 -08:00
stack c8496bc694 Revert "HBASE-23055 Alter hbase:meta"
This reverts commit 9abdb7b5ae.
2020-01-11 09:17:17 -08:00
stack 9abdb7b5ae HBASE-23055 Alter hbase:meta
Make it so hbase:meta can be altered. TableState for hbase:meta
    was hardcoded ENABLED. Make it dynamic. State is now kept in
    current active Master. It is transient so falls back to default
    if Master crashes. Add to registry a getMetaTableState
    which reads mirrored state from zookeeper (NOT from Master and
    defaults ENABLED if no implementation or error fetching state).
    hbase:meta schema will be bootstrapped from the filesystem.
    Changes to filesystem schema are atomic so we should be ok if
    Master fails mid-edit (TBD). Undoes a bunch of guards that
    prevented our being able to edit hbase:meta.

    TODO: Tests, more clarity around hbase:meta table state, and undoing
    references to hard-coded hbase:meta regioninfo.

    M hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
     Throw illegal access exception if you try to use MetaTableAccessor
     getting state of the hbase:meta table.

    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionImplementation.java
     Add fetching of hbase:meta table state from registry. Adds cache of
     tablestates w/ a ttl of 1 second (adjustable).

    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java
    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.java
      Add querying registry for hbase:meta table state.

    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/ZKAsyncRegistry.java
      Add querying of mirrored table state for hbase:meta table.

    M hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/ZNodePaths.java
     Shutdown access.

    M hbase-server/src/main/java/org/apache/hadoop/hbase/TableDescriptors.java
     Just cleanup.

    M hbase-server/src/main/java/org/apache/hadoop/hbase/master/TableStateManager.java
     Add state holder for hbase:meta. Removed unused methods.

    M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionStateStore.java
     Shut down access.

    M hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/DisableTableProcedure.java
     Allow hbase:meta to be disabled.

    M hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/EnableTableProcedure.java
     Allow hbase:meta to be enabled.

Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
2020-01-09 16:25:16 -08:00
stack b0233a294f HBASE-23554 Encoded regionname to regionname utility (#923); ADDENDUM 2019-12-11 11:02:59 -08:00
Michael Stack 8742265d85 HBASE-23554 Encoded regionname to regionname utility (#923)
Adds shell command regioninfo:

  hbase(main):001:0>  regioninfo '0e6aa5c19ae2b2627649dc7708ce27d0'
  {ENCODED => 0e6aa5c19ae2b2627649dc7708ce27d0, NAME => 'TestTable,,1575941375972.0e6aa5c19ae2b2627649dc7708ce27d0.', STARTKEY => '', ENDKEY => '00000000000000000000299441'}
  Took 0.4737 seconds

Signed-off-by: Sean Busbey <busbey@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2019-12-11 08:57:59 -08:00
Karthik Palanisamy a553b78c1c HBASE-23360 [CLI] Fix help command 'set_quota' for removing limits (#896) 2019-12-11 10:06:40 -06:00
Karthik Palanisamy df9cbd4254 HBASE-23336 [CLI] Incorrect row(s) count 'clear_deadservers' (#875)
Signed-off-by: Guangxu Cheng <gxcheng@apache.org>
Signed-off-by: Lijin Bin <binlijin@apache.org>
2019-11-26 19:20:33 +08:00
Mingliang Liu 4cc899d8e3 HBASE-23290 shell processlist command is broken 2019-11-14 16:03:29 -08:00
Karthik Palanisamy 0f910f0c32 HBASE-23176 delete_all_snapshot does not work with regex (#725) 2019-10-17 20:35:56 +08:00
Karthik Palanisamy 065993294f HBASE-23154 list_deadservers return incorrect no of rows (#717)
Signed-off-by: stack <stack@apache.org>
2019-10-12 09:13:50 -07:00
Karthik Palanisamy c0a09ccbbd HBASE-23152 Compaction_switch does not work by RegionServer name (#713)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
 Signed-off-by: stack <stack@apache.org>
2019-10-12 09:08:20 -07:00
Karthik Palanisamy f0b22120a0 HBASE-23144 Compact_rs throw wrong number of arguments
Signed-off-by: Reid Chan <reidchan@apache.org>
2019-10-11 15:08:57 +08:00
Karthik Palanisamy ba12d5b9de HBASE-23123 Merge_region fails from shell (#690)
Signed-off-by: Viraj Jasani <virajjasani007@gmail.com>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2019-10-09 10:39:23 -07:00
Karthik Palanisamy d237106ae6 HBASE-23138 Drop_all table by regex fail (#704)
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
2019-10-09 11:50:19 +01:00
Karthik Palanisamy bb83e423cc HBASE-23140 Remove unknown table error (#706)
Signed-off-by: huzheng <openinx@gmail.com>
2019-10-09 16:00:56 +08:00
Karthik Palanisamy e911bb7e21 HBASE-23134 Enable_all and Disable_all table by Regex fail from Shell (#698)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2019-10-08 18:16:47 +08:00
Viraj Jasani 944108c38a HBASE-22903 : Table to RegionStatesCount metrics - Use for broken alter_status command (#611)
Signed-off-by: huzheng <openinx@gmail.com>
2019-09-30 17:35:22 +08:00
Peter Somogyi 08b82c5c8c
HBASE-23046 Remove compatibility case from truncate command (#638)
Signed-off-by: Sean Busbey <busbey@apache.org>
2019-09-19 09:52:39 +02:00
Viraj Jasani 1dcc8ee50c HBASE-22760 : Pause/Resume/Query Snapshot Auto Cleanup Activity (#617) 2019-09-13 10:34:01 +05:30
Duo Zhang 124ac4d6c4 Revert "HBASE-22676 Move all the code in hbase-rsgroup to hbase-server and remove hbase-rsgroup module (#399)"
This reverts commit f7bbdde975.
2019-09-10 11:14:23 +08:00
Duo Zhang f7bbdde975 HBASE-22676 Move all the code in hbase-rsgroup to hbase-server and remove hbase-rsgroup module (#399)
Signed-off-by: Zheng Hu <openinx@gmail.com>
2019-09-10 10:47:44 +08:00
meiyi 66ad42c742
HBASE-22879 user_permission command failed to show global permission (#511) 2019-08-21 09:29:31 +08:00
Duo Zhang 46abaef4be HBASE-22875 TestShell and TestAdminShell2 are broken 2019-08-19 11:22:07 -05:00
Viraj Jasani f02f741f99 HBASE-22783 shell with removal of status and load classes
Signed-off-by: stack <stack@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Jan Hentschel <jan.hentschel@ultratendency.com>
2019-08-06 19:20:22 +02:00
johnhomsea a6f065396a HBASE-22779 fix TestTableShell is broken
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Jan Hentschel <jan.hentschel@ultratendency.com>
2019-08-02 12:46:22 +02:00
Viraj Jasani 8cfc46d8d0
HBASE-22735 list_regions show basic info for region currently in transition with error handling
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2019-07-31 18:48:40 -07:00
Guanghao Zhang 35acf3cb78
HBASE-22737 Add a new admin method and shell cmd to trigger the hbck chore to run (#425)
Signed-off-by: stack <stack@apache.org>
2019-08-01 08:54:47 +08:00
stack 0c80d5b42b HBASE-22723 Have CatalogJanitor report holes and overlaps; i.e. problems it sees when doing its regular scan of hbase:meta
Refactor of CatalogJanitor so it generates a
Report on the state of hbase:meta when it runs. Also
refactor so CJ runs even if RIT (previous it would
punt on running if RIT) so it can generate a 'Report'
on the interval regardless. If RIT, it just doesn't
go on to do the merge/split GC as it used to.

If report finds an issue, dump as a WARN message
to the master log.

Follow-on is to make the Report actionable/available
for the Master to pull when it goes to draw the hbck
UI page (could also consider shipping the Report as
part of ClusterMetrics?)

Adds new, fatter Visitor to CJ, one that generates
Report on each run keeping around more findings as
it runs.

Moved some methods around so class reads better;
previous methods were randomly ordered in the class.

M hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
 Make a few handy methods public.

M hbase-client/src/main/java/org/apache/hadoop/hbase/client/RegionInfo.java
 Add utility as defaults on the Inteface; i.e. is this the first region
 in table, is it last, does a passed region come next, or does passed
 region overlap this region (added tests for this new stuff).

M hbase-common/src/main/java/org/apache/hadoop/hbase/util/Bytes.java
 Bugfix... handle case where buffer passed is null.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/CatalogJanitor.java
 Lots of change, reorg., but mostly adding consistency checking
 to the visitor used scanning hbase:meta on a period and the
 generation of a Report on what the scan has found traversing
 hbase:meta. Added a main so could try the CatalogJanitor against
 a running cluster.

A hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestCatalogJanitorCluster.java
 Fat ugly test for CatalogJanitor consistency checking.

M hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegionInfo.java
 Add tests for new functionality in RI.

M hbase-shell/src/main/ruby/hbase/table.rb
 Bug fix for case where meta has a null regioninfo; scan was aborting.

Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
2019-07-29 16:00:57 -07:00
Jan Hentschel 2edbf0b85a HBASE-22692 Rubocop definition is not used in the /bin directory
Signed-off-by: Peter Somogyi <psomogyi@apache.org>
2019-07-24 11:16:06 +02:00
Viraj Jasani 9615c644f5 HBASE-22648 Snapshot TTL (#371)
Signed-off-by: Reid Chan <reidchan@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2019-07-22 15:03:44 -07:00
Duo Zhang ae7ffccfb8 HBASE-22661 list_regions command in hbase shell is broken
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-07-16 09:58:29 +08:00
zhangduo 47cb6295fa HBASE-22281 Fix failed shell UTs 2019-06-18 08:43:35 +08:00
Jan Hentschel 47a96444da
HBASE-22275 Removed deprecated getRegionInfo in HRegionLocation
Signed-off-by: stack <stack@apache.org>
2019-06-16 16:13:46 +02:00
Andrew Purtell a30b186568
HBASE-22449 https everywhere in Maven metadata (#247) 2019-05-21 12:34:25 -07:00
huzheng e254f5e67f HBASE-22425 Balance shell command broken in HBase-3.0.0 2019-05-17 09:54:57 +08:00
Andrew Purtell a9de9f5f28
HBASE-22377 Provide API to check the existence of a namespace which does not require ADMIN permissions (#225)
Signed-off-by: Xu Cang <xucang@apache.org>
2019-05-14 11:56:16 -07:00
Murtaza Hassan 600dfae387 HBASE-22358 Change rubocop configuration for method length 2019-05-09 11:22:04 +02:00
Murtaza Hassan 2005122363 HBASE-20851 Change rubocop config for max line length of 100 2019-05-07 20:16:12 +02:00
Jan Hentschel 4379fe4ad3
HBASE-22277 Addendum Also changed references in hbase-shell 2019-05-01 18:35:11 +02:00
Sean Busbey bf140acd20 HBASE-22083 move eclipse settings into a profile.
Signed-off-by: stack <stack@apache.org>
2019-04-25 14:17:18 -05:00
zhangduo 6e959777fc HBASE-22260 Addendum also remove the reference to ReplicationLoadSink#getTimeStampsOfLastAppliedOp in hbase-shell module 2019-04-21 17:18:11 +08:00
meiyi 94d9dc1e84 HBASE-22084 Rename AccessControlLists to PermissionStorage
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-04-12 14:18:09 +08:00
xuqinya cb47285d9c HBASE-21781 list_deadservers elapsed time is incorrect 2019-03-28 13:24:49 +01:00
Toshihiro Suzuki a330394eec HBASE-22097 Modify the description of split command in shell
Signed-off-by: Peter Somogyi <psomogyi@apache.org>
Signed-off-by: Xu Cang <xucang@apache.org>
2019-03-28 00:19:19 +09:00
yaojingyi f8524b8f8e HBASE-21964 unset Quota by Throttle Type
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-03-26 09:42:50 +08:00
Duo Zhang 3c5761e365 HBASE-22002 Remove the deprecated methods in Admin interface
Signed-off-by: Zheng Hu <openinx@gmail.com>
2019-03-14 21:42:23 +08:00
meiyi 9370347efe HBASE-21820 Implement CLUSTER quota scope
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-02-27 18:23:45 +08:00
zhangduo b57c03b45b HBASE-21947 TestShell is broken after we remove the jackson dependencies 2019-02-25 22:22:42 +08:00
Wellington Chevreuil 482b505796 HBASE-21505 - proposal for a more consistent report on status
Signed-off-by: Jingyun Tian <tianjy@apache.org>
2019-02-22 12:08:38 +08:00
meiyi 9a55cbb2c1 HBASE-21783 Support exceed user/table/ns throttle quota if region server has available quota
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-02-21 15:36:37 +08:00