Go to file
Michael Stack 6ad73b9668 HBASE-24885 STUCK RIT by hbck2 assigns (#2283)
Adds region state check on hbck2 assigns/unassigns. Returns pid of -1
if in inappropriate state with logging explaination which suggests
passing override if operator wants to assign/unassign anyways. Here
is an example of what happens now if hbck2 tries an unassign and
Region already unassigned:

  2020-08-19 11:22:06,926 INFO  [RpcServer.default.FPBQ.Fifo.handler=1,queue=0,port=50086] assignment.AssignmentManager(820): Failed {ENCODED => d1112e553991e938b6852f87774c91ee, NAME => 'TestHbck,zzzzz,1597861310769.d1112e553991e938b6852f87774c91ee.', STARTKEY => 'zzzzz', ENDKEY => ''} unassign, override=false; set override to by-pass state checks.
  org.apache.hadoop.hbase.client.DoNotRetryRegionException: Unexpected state for state=CLOSED, location=null, table=TestHbck, region=d1112e553991e938b6852f87774c91ee
          at org.apache.hadoop.hbase.master.assignment.AssignmentManager.preTransitCheck(AssignmentManager.java:583)
          at org.apache.hadoop.hbase.master.assignment.AssignmentManager.createOneUnassignProcedure(AssignmentManager.java:812)
          at org.apache.hadoop.hbase.master.MasterRpcServices.unassigns(MasterRpcServices.java:2616)
          at org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos$HbckService$2.callBlockingMethod(MasterProtos.java)
          at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:397)
          at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:133)
          at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:338)
          at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:318)

Previous it would just create the unassign anyways. Now must pass override
to queue the procedure regardless. Safer.

hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java
 javadoc on assigns/unassigns. Minor refactor in assigns/unassigns to cater to
 case where procedure may come back null (if override not set and fails state checks).

hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
 checkstyle cleanups.
 Clarifying javadoc on how there is no state checking when bulk assigns creating/enabling
 tables.

 createOneAssignProcedure and createOneUnassignProcedure now handle exceptions which now
 can be thrown if no override and region state is not appropriate.

 Aggregation of createAssignProcedure and createUnassignProcedure instances adding in
 region state check invoked if override is NOT set.

hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionStateNode.java
 Change to setProcedure so it returns passed proc as result instead of void

Signed-off-by: Duo Zhang <zhangduo@apache.org>
2020-08-24 09:22:16 -07:00
.idea HBASE-23707 Add IntelliJ check style plugin configuration (#1064) 2020-01-27 10:40:24 -08:00
bin HBASE-24806 Small Updates to Functionality of Shell IRB Workspace (#2232) 2020-08-18 13:14:34 -07:00
conf HBASE-24343 Document how to configure the http request log 2020-05-29 16:50:16 -07:00
dev-support HBASE-24799 Do not call make_binary_release for hbase-thirdparty in release scripts (#2177) 2020-08-19 11:28:33 +08:00
hbase-annotations HBASE-23253 Rewrite rsgroup related UTs with the new methods introduced in HBASE-22932 (#813) 2020-03-02 15:43:40 +08:00
hbase-archetypes HBAE-24507 Remove HTableDescriptor and HColumnDescriptor (#2186) 2020-08-04 10:31:42 +08:00
hbase-assembly HBASE-24630 Purge dev javadoc from client bin tarball 2020-06-24 17:11:23 -07:00
hbase-asyncfs HBASE-24912 Enlarge MemstoreFlusherChore/CompactionChecker period for unit test (#2285) 2020-08-21 12:41:20 +08:00
hbase-backup HBASE-24912 Enlarge MemstoreFlusherChore/CompactionChecker period for unit test (#2285) 2020-08-21 12:41:20 +08:00
hbase-balancer HBASE-24647 Rewrite MetaTableAccessor.multiMutate to remove the deprecated coprocessorService call (#1989) 2020-07-01 08:06:29 +08:00
hbase-build-configuration HBASE-23675 Move to Apache parent POM version 22 2020-01-11 11:18:30 +01:00
hbase-checkstyle HBASE-22749 Distributed MOB compactions 2020-02-19 16:06:38 -06:00
hbase-client HBASE-24918 Make RegionInfo#UNDEFINED IA.Private (#2289) 2020-08-21 09:26:47 -07:00
hbase-common HBASE-24583 Normalizer can't actually merge empty regions... 2020-08-12 10:04:45 -07:00
hbase-endpoint HBASE-24912 Enlarge MemstoreFlusherChore/CompactionChecker period for unit test (#2285) 2020-08-21 12:41:20 +08:00
hbase-examples HBASE-24912 Enlarge MemstoreFlusherChore/CompactionChecker period for unit test (#2285) 2020-08-21 12:41:20 +08:00
hbase-external-blockcache HBASE-24170 Remove hadoop-2.0 profile (#1495) 2020-04-16 18:57:40 +08:00
hbase-hadoop-compat HBASE-24779 Report on the WAL edit buffer usage/limit for replication 2020-08-07 12:59:17 -04:00
hbase-hbtop HBASE-24775 [hbtop] StoreFile size should be rounded off (#2144) 2020-07-28 08:14:45 +09:00
hbase-http HBASE-24777 InfoServer support ipv6 host and port 2020-07-27 20:45:45 +05:30
hbase-it HBASE-24750 : Adding default UncaughtExceptionHandler for Thread factories (ADDENDUM) 2020-08-11 17:18:47 +05:30
hbase-logging HBASE-24309 Avoid introducing log4j and slf4j-log4j dependencies for modules other than hbase-assembly (#1640) 2020-05-12 12:03:30 +08:00
hbase-mapreduce HBASE-24912 Enlarge MemstoreFlusherChore/CompactionChecker period for unit test (#2285) 2020-08-21 12:41:20 +08:00
hbase-metrics HBASE-24663 Add procedure process time statistics UI (#2035) 2020-07-10 15:03:52 +08:00
hbase-metrics-api HBASE-24309 Avoid introducing log4j and slf4j-log4j dependencies for modules other than hbase-assembly (#1640) 2020-05-12 12:03:30 +08:00
hbase-procedure HBASE-24912 Enlarge MemstoreFlusherChore/CompactionChecker period for unit test (#2285) 2020-08-21 12:41:20 +08:00
hbase-protocol-shaded HBASE-24627 Normalize one table at a time 2020-08-18 09:46:29 -07:00
hbase-replication HBASE-24309 Avoid introducing log4j and slf4j-log4j dependencies for modules other than hbase-assembly (#1640) 2020-05-12 12:03:30 +08:00
hbase-resource-bundle HBASE-24258 [Hadoop3.3] Update license for org.ow2.asm:* (#1582) 2020-05-04 14:57:15 -07:00
hbase-rest HBASE-24912 Enlarge MemstoreFlusherChore/CompactionChecker period for unit test (#2285) 2020-08-21 12:41:20 +08:00
hbase-server HBASE-24885 STUCK RIT by hbck2 assigns (#2283) 2020-08-24 09:22:16 -07:00
hbase-shaded HBASE-24309 Avoid introducing log4j and slf4j-log4j dependencies for modules other than hbase-assembly (#1640) 2020-05-12 12:03:30 +08:00
hbase-shell HBASE-24890 The command regioninfo is not available (#2263) 2020-08-21 20:47:03 -07:00
hbase-testing-util HBASE-24309 Avoid introducing log4j and slf4j-log4j dependencies for modules other than hbase-assembly (#1640) 2020-05-12 12:03:30 +08:00
hbase-thrift HBASE-24912 Enlarge MemstoreFlusherChore/CompactionChecker period for unit test (#2285) 2020-08-21 12:41:20 +08:00
hbase-zookeeper HBASE-24844 RecoverableZookeeper#close followed by ExecutorService shutdown 2020-08-12 17:09:40 +05:30
src HBASE-24935 Remove 1.3.6 from download page (#2295) 2020-08-24 11:18:08 +08:00
.asf.yaml HBASE-24261: (Addendum) Make notifications a toplevel object 2020-05-04 16:19:58 -07:00
.editorconfig HBASE-23767 Add JDK11 compilation and unit test support to Github precommit 2020-03-05 11:46:15 -08:00
.gitattributes HBASE-6816. [WINDOWS] line endings on checkout for .sh files 2013-01-23 19:30:14 +00:00
.gitignore HBASE-24271 Set values in `conf/hbase-site.xml` that enable running on `LocalFileSystem` out of the box 2020-05-14 13:18:43 -07:00
.pylintrc HBASE-21712 : Make submit-patch.py python3 compatible 2019-01-14 14:50:50 -08:00
.rubocop.yml HBASE-23943 Updated Rubocop configuration to current version 2020-03-18 11:09:36 +01:00
CHANGES.txt HBASE-18548 Move sources of website gen and check jobs into source control 2017-08-10 14:48:14 -07:00
LICENSE.txt HBASE-18548 Move sources of website gen and check jobs into source control 2017-08-10 14:48:14 -07:00
NOTICE.txt HBASE-24417 update copyright notices year to 2020 (#1760) 2020-05-25 12:58:29 +08:00
README.txt HBASE-14348 Update download mirror link 2018-04-04 14:30:06 -07:00
pom.xml HBASE-24762 Purge protobuf java 2.5.0 dependency (#2128) 2020-07-24 11:48:35 +08:00

README.txt

Apache HBase [1] is an open-source, distributed, versioned, column-oriented
store modeled after Google' Bigtable: A Distributed Storage System for
Structured Data by Chang et al.[2]  Just as Bigtable leverages the distributed
data storage provided by the Google File System, HBase provides Bigtable-like
capabilities on top of Apache Hadoop [3].

To get started using HBase, the full documentation for this release can be
found under the doc/ directory that accompanies this README.  Using a browser,
open the docs/index.html to view the project home page (or browse to [1]).
The hbase 'book' at http://hbase.apache.org/book.html has a 'quick start'
section and is where you should being your exploration of the hbase project.

The latest HBase can be downloaded from an Apache Mirror [4].

The source code can be found at [5]

The HBase issue tracker is at [6]

Apache HBase is made available under the Apache License, version 2.0 [7]

The HBase mailing lists and archives are listed here [8].

The HBase distribution includes cryptographic software. See the export control
notice here [9].

1. http://hbase.apache.org
2. http://research.google.com/archive/bigtable.html
3. http://hadoop.apache.org
4. http://www.apache.org/dyn/closer.lua/hbase/
5. https://hbase.apache.org/source-repository.html
6. https://hbase.apache.org/issue-tracking.html
7. http://hbase.apache.org/license.html
8. http://hbase.apache.org/mail-lists.html
9. https://hbase.apache.org/export_control.html