15388 Commits

Author SHA1 Message Date
Guanghao Zhang
57c8671728 HBASE-20678 NPE in ReplicationSourceManager#NodeFailoverWorker 2018-06-05 14:37:52 +08:00
Andrew Purtell
a45763df55 HBASE-20670 NPE in HMaster#isInMaintenanceMode 2018-06-04 15:19:47 -07:00
Nihal Jain
832f67d483 HBASE-20677 Backport test of HBASE-20566 'Creating a system table after enabling rsgroup feature puts region into RIT' to branch-2
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-06-04 14:30:04 -07:00
Michael Stack
d99ba62b12 HBASE-20634 Reopen region while server crash can cause the procedure to be stuck; ADDENDUM 2018-06-04 12:39:39 -07:00
Michael Stack
03c0f7fe13 HBASE-20628 SegmentScanner does over-comparing when one flushing
Signed-off-by: eshcar <eshcar@oath.com>
Signed-off-by: anoopsjohn <anoopsamjohn@gmail.com>
2018-06-04 09:50:47 -07:00
zhangduo
a472f24d17 HBASE-20634 Reopen region while server crash can cause the procedure to be stuck
A reattempt at fixing HBASE-20173 [AMv2] DisableTableProcedure concurrent to ServerCrashProcedure can deadlock

The scenario is a SCP after processing WALs, goes to assign regions that
were on the crashed server but a concurrent Procedure gets in there
first and tries to unassign a region that was on the crashed server
(could be part of a move procedure or a disable table, etc.). The
unassign happens to run AFTER SCP has released all RPCs that
were going against the crashed server. The unassign fails because the
server is crashed. The unassign used to suspend itself only it would
never be woken up because the server it was going against had already
been processed. Worse, the SCP could not make progress because the
unassign was suspended with the lock on a region that it wanted to
assign held making it so it could make no progress.

In here, we add to the unassign recognition of the state where it is
running post SCP cleanup of RPCs. If present, unassign moves to finish
instead of suspending itself.

Includes a nice unit test made by Duo Zhang that reproduces nicely the
hung scenario.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/FailedRemoteDispatchException.java
 Moved this class back to hbase-procedure where it belongs.

M hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/NoNodeDispatchException.java
M hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/NoServerDispatchException.java
M hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/NullTargetServerDispatchException.java
 Specializiations on FRDE so we can be more particular when we say there
 was a problem.

M hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.java
 Change addOperationToNode so we throw exceptions that give more detail
 on issue rather than a mysterious true/false

M hbase-protocol-shaded/src/main/protobuf/MasterProcedure.proto
 Undo SERVER_CRASH_HANDLE_RIT2. Bad idea (from HBASE-20173)

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java
 Have expireServer return true if it actually queued an expiration. Used
 later in this patch.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
 Hide methods that shouldn't be public. Add a particular check used out
 in unassign procedure failure processing.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MoveRegionProcedure.java
 Check that server we're to move from is actually online (might
 catch a few silly move requests early).

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionStates.java
 Add doc on ServerState. Wasn't being used really. Now we actually stamp
 a Server OFFLINE after its WAL has been split. Means its safe to assign
 since all WALs have been processed. Add methods to update SPLITTING
 and to set it to OFFLINE after splitting done.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.java
 Change logging to be new-style and less repetitive of info.
 Cater to new way in which .addOperationToNode returns info (exceptions
 rather than true/false).

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.java
 Add looking for the case where we failed assign AND we should not
 suspend because we will never be woken up because SCP is beyond
 doing this for all stuck RPCs.

 Some cleanup of the failure processing grouping where we can proceed.

 TODOs have been handled in this refactor including the TODO that
 wonders if it possible that there are concurrent fails coming in
 (Yes).

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.java
 Doc and removing the old HBASE-20173 'fix'.
 Also updating ServerStateNode post WAL splitting so it gets marked
 OFFLINE.

A hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestServerCrashProcedureStuck.java
 Nice test by Duo Zhang.

Signed-off-by: Umesh Agashe <uagashe@cloudera.com>
Signed-off-by: Duo Zhang <palomino219@gmail.com>
Signed-off-by: Mike Drob <mdrob@apache.org>
2018-06-04 09:26:56 -07:00
Thiriguna Bharat Rao
08446916a0 HBASE-18948: Added a note in the Tag implementation details in security.adoc
Coprocessors that run server-side on RegionServers can perform get and set operations on cell Tags.
Tags are striped out at the RPC layer before the read response is sent back, so clients do not see these tags.

Signed-off-by: Josh Elser <elserj@apache.org>
2018-06-04 11:03:58 -04:00
Ashish Singhi
7da0015a3b HBASE-20590 REST Java client is not able to negotiate with the server in the secure mode
Signed-off-by: Ashish Singhi <ashishsinghi@apache.org>
2018-06-04 14:11:19 +05:30
Guangxu Cheng
1b716ad5c8 Add Guangxu Cheng to pom.xml 2018-06-04 14:54:39 +08:00
Josh Elser
a5ed463d48 HBASE-20579 Include original exception in wrapped exception
Signed-off-by: Ted Yu <yuzhihong@gmail.com>
2018-06-02 22:27:13 -04:00
Jan Hentschel
8377873d22 HBASE-12882 Log level now configurable from outside Log4j configuration 2018-06-02 11:21:15 +02:00
Jan Hentschel
5b24d4ce0c HBASE-19475 Extended backporting strategy in documentation 2018-06-02 10:36:01 +02:00
maoling
1b98a96caa HBASE-19761:Fix Checkstyle errors in hbase-zookeeper
Signed-off-by: Jan Hentschel <jan.hentschel@ultratendency.com>
2018-06-02 10:08:15 +02:00
Andrew Purtell
9d5004894c HBASE-20667 Rename TestGlobalThrottler to TestReplicationGlobalThrottler 2018-06-01 17:01:16 -07:00
tedyu
74ef118e9e HBASE-20668 Avoid permission change if ExportSnapshot's copy fails 2018-06-01 14:34:51 -07:00
Xu Cang
a11701ecc5 HBASE-18116 Replication source in-memory accounting should not include bulk transfer hfiles
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-06-01 11:15:47 -07:00
Peter Somogyi
0968668283 HBASE-20592 Create a tool to verify tables do not have prefix tree encoding
Signed-off-by: Mike Drob <mdrob@apache.org>
2018-06-01 19:17:49 +02:00
Jan Hentschel
d5ea926321 HBASE-19724 Fixed Checkstyle errors in hbase-hadoop2-compat and enabled Checkstyle to fail on violations 2018-06-01 10:59:47 +02:00
Biju Nair
2fdd36fdcf HBASE-20602 hbase.master.quota.observer.ignore property seems to be not taking effect
Signed-off-by: Josh Elser <elserj@apache.org>
2018-05-31 20:21:36 -04:00
Josh Elser
0c42acbdf8 HBASE-20664 Reduce the broad scope of outToken in ThriftHttpServlet
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-05-31 20:02:25 -04:00
Andrew Purtell
da3ecf1f13 Revert "HBASE-18116 fix replication source in-memory calculation by excluding bulk load file"
This reverts commit 6f3f34227e83dd1811a06066d1d2bb913299a297.
2018-05-31 15:28:28 -07:00
Xu Cang
6f3f34227e HBASE-18116 fix replication source in-memory calculation by excluding bulk load file
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-05-31 14:22:12 -07:00
Sean Busbey
d909ec55aa HBASE-20444 Addendum keep folks from looking at raw version component array.
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-05-31 13:29:52 -05:00
Sean Busbey
286245987f INFRA-16532 HBase master branch should not allow force pushes.
This empty commit is here so we can attempt force pushing to remove it.
2018-05-31 11:11:37 -05:00
Nihal Jain
40a73a5ca7 HBASE-20653 Add missing observer hooks for region server group to MasterObserver
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-05-30 21:29:07 -07:00
Sean Busbey
c19fbf2be0 HBASE-20501 update minimum supported Hadoop version to 2.7.1.
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-05-30 21:22:42 -05:00
Andrew Purtell
b889c8a221 HBASE-20646 TestWALProcedureStoreOnHDFS failing on branch-1 2018-05-30 14:44:30 -07:00
Andrew Purtell
31ae8dc7f3 Revert "TestWALProcedureStoreOnHDFS failing on branch-1"
This reverts commit dcfa01448c1693308256b41fe43aca6df41fd3b8.
2018-05-30 14:44:22 -07:00
Andrew Purtell
dcfa01448c TestWALProcedureStoreOnHDFS failing on branch-1 2018-05-30 13:45:38 -07:00
Josh Elser
c17be2e622 HBASE-20640 Add missing test category and class rule
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-05-30 10:34:19 -04:00
maoling
b77fb77b32 HBASE-20444 Improve comparison logic for HBase version strings
Signed-off-by: Sean Busbey <busbey@apache.org>
2018-05-30 09:18:53 -05:00
zhangduo
997747076d HBASE-20659 Implement a reopen table regions procedure 2018-05-30 20:03:25 +08:00
eshcar
63726f12d0 HBASE-20390-ADDENDUM-3: IMC Default Parameters for 2.0.0 (fix documentation) 2018-05-30 13:08:52 +03:00
Josh Elser
eb4b854dc2 HBASE-20582 ADDENDUM Roll back to earlier jruby to prevent menforcer errors
Signed-off-by: Sean Busbey <busbey@apache.org>
2018-05-30 01:57:30 -05:00
tedyu
266b251dfa HBASE-20639 Implement permission checking through AccessController instead of RSGroupAdminEndpoint - revert due to pending discussion 2018-05-29 19:57:51 -07:00
tedyu
fe73fe8def HBASE-20653 Add missing observer hooks for region server group to MasterObserver - revert due to pending discussion 2018-05-29 19:42:28 -07:00
Nihal Jain
8d19bbd347 HBASE-20653 Add missing observer hooks for region server group to MasterObserver
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-05-29 16:37:19 -07:00
Apekshit Sharma
92460c58aa HBASE-20594 Provide utility to get table desc delta
Ammending Author: Mike Drob <mdrob@apache.org>

Signed-off-by: Sean Busbey <busbey@apache.org>
Signed-off-by: Apekshit Sharma <appy@apache.org>
2018-05-29 14:28:57 -05:00
Andrew Purtell
06611256ee HBASE-20597 Serialize access to a shared reference to ZooKeeperWatcher in HBaseReplicationEndpoint 2018-05-29 11:29:05 -07:00
Andrew Purtell
807c905f90 Revert "HBASE-20597 Use a lock to serialize access to a shared reference to ZooKeeperWatcher in HBaseReplicationEndpoint"
This reverts commit 9fbce1668b1fc1e8a7d4bdb341bbed7bf65936f2.
2018-05-29 11:24:11 -07:00
Nihal Jain
7ff29d8e00 HBASE-20633 Dropping a table containing a disable violation policy fails to remove the quota upon table delete
Signed-off-by: Josh Elser <elserj@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2018-05-29 11:33:56 -04:00
Mike Drob
a110e1eff5 HBASE-20478 Update checkstyle to v8.2
Cannot go to latest (8.9) yet due to
  https://github.com/checkstyle/checkstyle/issues/5279

* move hbaseanti import checks to checkstyle
* implment a few missing equals checks, and ignore one
* fix lots of javadoc errors

Signed-off-by: Sean Busbey <busbey@apache.org>
2018-05-29 10:12:31 -05:00
eshcar
42be553433 HBASE-20390 ADDENDUM 2: fix TestHRegionWithInMemoryFlush OOME 2018-05-29 16:27:20 +03:00
Apekshit Sharma
05f57f4c03 HBASE-20652 Remove internal uses of some deprecated MasterObserver hooks
Remove internal uses of these hooks:
preModifyNamespace
postModifyNamespace
preModifyTable
postModifyTable
preModifyTableAction
postCompletedModifyTableAction

Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-05-28 21:10:52 -07:00
huzheng
81228f72d0 HBASE-20533 Fix the flaky TestAssignmentManagerMetrics 2018-05-29 09:38:47 +08:00
eshcar
1cd2b56802 HBASE-20390-ADDENDUM: fix TestHRegionWithInMemoryFlush OOME 2018-05-28 16:10:53 +03:00
Nihal Jain
9bd4b04ca8 HBASE-20639 Implement permission checking through AccessController instead of RSGroupAdminEndpoint
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-05-27 11:29:26 -07:00
eshcar
1eabbb4295 HBASE-20390: IMC Default Parameters for 2.0.0 2018-05-26 22:57:28 +03:00
Ankit Singhal
874f1e8e6a HBASE-20645 Pass stringified table name to exists? method
Signed-off-by: Josh Elser <elserj@apache.org>
2018-05-25 15:02:47 -04:00
Toshihiro Suzuki
b1089e8310 HBASE-20648 HBASE-19364 "Truncate_preserve fails with table when replica region > 1" for master branch
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-05-25 07:52:40 -07:00