Commit Graph

7222 Commits

Author SHA1 Message Date
zhangduo b5222f88b2 HBASE-20822 TestAsyncNonMetaRegionLocator is flakey 2018-07-09 14:56:37 +08:00
Guanghao Zhang 3bca01854a HBASE-20842 Infinite loop when replaying remote wals
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-07-08 09:35:45 +08:00
Nihal Jain 361be53344 HBASE-20808 (Addendum) Remove duplicate calls for cancelling of chores
Signed-off-by: Reid Chan <reidchan@apache.org>
2018-07-07 00:17:10 +08:00
Nihal Jain 1ade4d2f44 HBASE-20808 Wrong shutdown order between Chores and ChoreService
Signed-off-by: Reid Chan <reidchan@apache.org>
2018-07-06 11:35:03 +08:00
Yu Li ec8947f226 HBASE-20691 Change the default WAL storage policy back to "NONE""
This reverts commit 564c193d61 and added more doc
about why we choose "NONE" as the default.
2018-07-04 13:43:48 +08:00
Guangxu Cheng ee3990e42c HBASE-20474 Show non-RPC tasks on master/regionserver Web UI by default 2018-07-04 10:53:02 +08:00
zhangduo 4366720bd1 HBASE-20839 Fallback to FSHLog if we can not instantiated AsyncFSWAL when user does not specify AsyncFSWAL explicitly 2018-07-04 10:29:24 +08:00
Ted Yu 0f23784182 HBASE-20244 NoSuchMethodException when retrieving private method decryptEncryptedDataEncryptionKey from DFSClient
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-07-03 22:15:18 +08:00
huzheng 0454878e71 HBASE-20789 TestBucketCache#testCacheBlockNextBlockMetadataMissing is flaky 2018-07-03 17:56:34 +08:00
jingyuntian 66ad9fdef8 HBASE-20193 Basic Replication Web UI - Regionserver
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-07-03 15:47:14 +08:00
zhangduo 380350d5bc HBASE-20829 Remove the addFront assertion in MasterProcedureScheduler.doAdd 2018-07-03 15:43:20 +08:00
Josh Elser 13e4578be8 HBASE-20826 Truncate really long RpcServer warnings unless TRACE is on
Signed-off-by: zhangduo <zhangduo@apache.org>
Signed-off-by: Ted Yu <tyu@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2018-07-03 10:14:34 +08:00
Ankit Singhal cfdabe9267 HBASE-20817 Infinite loop when executing ReopenTableRegionsProcedure
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-07-02 21:26:14 +08:00
eshcar d822ee3a7c HBASE-20542: Better heap utilization for IMC with MSLABs 2018-07-01 15:31:31 +03:00
zhangduo 112d050609 HBASE-20829 TestSyncReplicationStandbyKillRS is flakey - add error log for debugging 2018-07-01 18:14:10 +08:00
Ankit Singhal 34e23fe425 HBASE-20825 Fix pre and post hooks of CloneSnapshot and RestoreSnapshot for Access checks
Signed-off-by: Josh Elser <elserj@apache.org>
Signed-off-by: Ted Yu <tyu@apache.org>
2018-06-29 16:33:02 -04:00
Pankaj bb8826ca5f HBASE-20357 AccessControlClient API Enhancement
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-06-28 22:48:58 -07:00
Josh Elser fe75f90be2 HBASE-20792 info:servername and info:sn inconsistent for OPEN region
Signed-off-by: zhangduo <zhangduo@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2018-06-29 11:10:40 +08:00
Xu Cang 78e7dd6537 HBASE-19722 Meta query statistics metrics source
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-06-28 17:17:23 -07:00
zhangduo 0789e15b5e HBASE-20790 Fix the style issues on branch HBASE-19064 before merging back to master 2018-06-28 18:08:43 +08:00
zhangduo a84cdbd579 HBASE-20783 Addendum fix broken TestSyncReplicationStandBy 2018-06-28 18:08:43 +08:00
Guanghao Zhang 44ca13fe07 HBASE-20569 NPE in RecoverStandbyProcedure.execute 2018-06-28 18:08:43 +08:00
zhangduo 7448b045cc HBASE-20660 Reopen regions using ReopenTableRegionsProcedure 2018-06-28 18:08:43 +08:00
zhangduo 05295abd5b HBASE-20637 Polish the WAL switching when transiting from A to S 2018-06-28 18:08:43 +08:00
zhangduo f67763ffa0 HBASE-20424 Allow writing WAL to local and remote cluster concurrently 2018-06-28 18:08:43 +08:00
zhangduo 603110719d HBASE-20576 Check remote WAL directory when creating peer and transiting peer to A 2018-06-28 18:08:43 +08:00
zhangduo 8a264dfc00 HBASE-19865 Add UT for sync replication peer in DA state 2018-06-28 18:08:43 +08:00
zhangduo ae6c90b4ec HBASE-20426 Give up replicating anything in S state 2018-06-28 18:08:43 +08:00
huzheng 5b6c0d2777 HBASE-20432 Cleanup related resources when remove a sync replication peer 2018-06-28 18:08:43 +08:00
Guanghao Zhang 1bea678ef8 HBASE-20458 Support removing a WAL from LogRoller 2018-06-28 18:08:43 +08:00
zhangduo 2d203c4479 HBASE-20434 Also remove remote wals when peer is in DA state 2018-06-28 18:08:43 +08:00
zhangduo b281328228 HBASE-20456 Support removing a ReplicationSourceShipper for a special wal group 2018-06-28 18:08:43 +08:00
huzheng 66cced16dc HBASE-20425 Do not write the cluster id of the current active cluster when writing remote WAL 2018-06-28 18:08:43 +08:00
huzheng fe339860b5 HBASE-19782 Reject the replication request when peer is DA or A state 2018-06-28 18:08:43 +08:00
zhangduo d91784e666 HBASE-20370 Also remove the wal file in remote cluster when we finish replicating a file 2018-06-28 18:08:43 +08:00
Guanghao Zhang d57c80c415 HBASE-20163 Forbid major compaction when standby cluster replay the remote wals 2018-06-28 18:08:43 +08:00
zhangduo 2389c09d75 HBASE-19079 Support setting up two clusters with A and S stat 2018-06-28 18:08:43 +08:00
Guanghao Zhang c7d1085fa2 HBASE-19999 Remove the SYNC_REPLICATION_ENABLED flag 2018-06-28 18:07:44 +08:00
Guanghao Zhang 183b8d0581 HBASE-19973 Implement a procedure to replay sync replication wal for standby cluster 2018-06-28 18:07:44 +08:00
huzheng 45794d4156 HBASE-19943 Only allow removing sync replication peer which is in DA state 2018-06-28 18:07:44 +08:00
zhangduo 0c97cda2a9 HBASE-19990 Create remote wal directory when transitting to state S 2018-06-28 18:07:44 +08:00
zhangduo a41c549ca4 HBASE-19082 Reject read/write from client but accept write from replication in state S 2018-06-28 18:07:44 +08:00
zhangduo 39dd81a7c6 HBASE-19957 General framework to transit sync replication state 2018-06-28 18:07:44 +08:00
Guanghao Zhang 00e54aae24 HBASE-19935 Only allow table replication for sync replication for now 2018-06-28 18:07:44 +08:00
Guanghao Zhang 1481bd9481 HBASE-19864 Use protobuf instead of enum.ordinal to store SyncReplicationState
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-06-28 18:07:44 +08:00
zhangduo d8842dc3d4 HBASE-19857 Complete the procedure for adding a sync replication peer 2018-06-28 18:07:44 +08:00
Guanghao Zhang 2acebac00e HBASE-19781 Add a new cluster state flag for synchronous replication 2018-06-28 18:07:44 +08:00
zhangduo 274b813e12 HBASE-19747 Introduce a special WALProvider for synchronous replication 2018-06-28 18:07:44 +08:00
Guanghao Zhang b4a1dbf768 HBASE-19078 Add a remote peer cluster wal directory config for synchronous replication
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-06-28 18:07:44 +08:00
zhangduo b3dea0378e HBASE-19083 Introduce a new log writer which can write to two HDFSes 2018-06-28 18:07:44 +08:00
Michael Stack c23e61f20d HBASE-20781 Save recalculating families in a WALEdit batch of Cells
Pass the Set of families through to the WAL rather than recalculate
a Set already known.

Signed-off-by: zhangduo <zhangduo@apache.org>
2018-06-27 22:04:57 -07:00
Reid Chan 74e5c776b3 HBASE-20732 Shutdown scan pool when master is stopped
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2018-06-28 11:42:18 +08:00
tedyu a8b16ac907 HBASE-20798 Duplicate thread names of StoreFileOpenerThread and StoreFileCloserThread (Zephyr Guo) 2018-06-27 17:21:07 -07:00
Sahil Aggarwal 952bb96c8a
HBASE-19164: Remove UUID.randomUUID in tests.
Signed-off-by: Mike Drob <mdrob@apache.org>
2018-06-27 10:34:16 -05:00
jingyuntian 6a0c67344a HBASE-20194 Basic Replication WebUI - Master
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-06-26 18:26:54 +08:00
Michael Stack 4ba6242a62 HBASE-20780 ServerRpcConnection logging cleanup Get rid of one of the logging lines in ServerRpcConnection by amalgamating all into one new-style log line. 2018-06-25 16:43:11 -07:00
Michael Stack 0db2b628d6
HBASE-20770 WAL cleaner logs way too much; gets clogged when lots of work to do
General log cleanup; setting stuff that can flood the log to TRACE.
2018-06-25 12:13:04 -07:00
Todd Lipcon 025ddce868 HBASE-20403. Fix race between prefetch task and non-pread HFile reads
With prefetch-on-open enabled, the task doing the prefetching was using
non-positional (i.e. streaming) reads. If the main (non-prefetch) thread
was also using non-positional reads, these two would conflict, because
inputstreams are not thread-safe for non-positional reads.

In the case of an encrypted filesystem, this could cause JVM crashes,
etc, as underlying cipher buffers were freed underneath the racing
threads. In the case of a non-encrypted filesystem, less severe errors
would be thrown. The included unit test reproduces the latter case.
2018-06-25 11:54:52 -07:00
zhangduo 9640ebacd4 HBASE-20777 RpcConnection could still remain opened after we shutdown the NettyRpcServer 2018-06-25 14:15:15 +08:00
Michael Stack daad14428d HBASE-20778 Make it so WALPE runs on DFS 2018-06-23 23:33:53 -07:00
zhangduo 55147c7eae HBASE-20775 Addendum disable REGIONS_ON_MASTER for TEstMultiParallel 2018-06-23 17:38:50 +08:00
zhangduo 14087cc919 HBASE-20775 TestMultiParallel is flakey 2018-06-22 21:32:07 +08:00
zhangduo 177458d9d0 HBASE-18569 Add prefetch support for async region locator 2018-06-22 18:25:31 +08:00
tedyu 98245ca6e4 HBASE-20740 StochasticLoadBalancer should consider CoprocessorService request factor when computing cost (chenxu) 2018-06-22 00:26:14 -07:00
zhangduo 7b716c964b HBASE-20752 Make sure the regions are truly reopened after ReopenTableRegionsProcedure 2018-06-22 14:04:33 +08:00
zhangduo 0d784efc37 HBASE-20767 Always close hbaseAdmin along with connection in HBTU 2018-06-21 21:01:19 +08:00
Ankit Singhal 72784c2d83 HBASE-20642 Clients should re-use the same nonce across DDL operations
Also changes modify table operations to help the case where a MTP spans
two master, avoiding the sanity-checks propagating back to the client
unnecessarily.

Signed-off-by: Josh Elser <elserj@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2018-06-20 14:56:10 -07:00
Josh Elser e989a9927e HBASE-20706 Prevent MTP from trying to reopen non-OPEN regions
ModifyTableProcedure is using MoveRegionProcedure in a way
that was unintended from the original implementation. As such,
we have to guard against certain usages of it. We know we can
re-open OPEN regions, but regions in OPENING will similarly
soon be OPEN (thus, we want to reopen those regions too).

Signed-off-by: Michael Stack <stack@apache.org>
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-06-20 14:19:28 -07:00
zhangduo 4cb70ea9f5 HBASE-20739 Add priority for SCP 2018-06-20 15:17:07 +08:00
zhangduo c08eff67af HBASE-20742 Always create WAL directory for region server 2018-06-20 14:21:23 +08:00
Michael Stack 21684a32fa HBASE-20745 Log when master proc wal rolls 2018-06-19 19:53:51 -07:00
zhangduo 6dbbd78aa0 HBASE-20708 Remove the usage of RecoverMetaProcedure in master startup 2018-06-19 15:02:10 +08:00
Allan Yang b336da925a HBASE-20727 Persist FlushedSequenceId to speed up WAL split after cluster restart 2018-06-19 09:45:47 +08:00
Sean Busbey f1b536bad4 HBASE-20332 shaded mapreduce module shouldn't include hadoop
* modify the jar checking script to take args; make hadoop stuff optional
* separate out checking the artifacts that have hadoop vs those that don't.
* * Unfortunately means we need two modules for checking things
* * put in a safety check that the support script for checking jar contents is maintained in both modules
* * have to carve out an exception for o.a.hadoop.metrics2. :(
* fix duplicated class warning
* clean up dependencies in hbase-server and some modules that depend on it.
* allow Hadoop to have its own htrace where it needs it
* add a precommit check to make sure we're not using old htrace imports
2018-06-18 11:31:04 -07:00
tedyu ac5bb8155b HBASE-20723 Custom hbase.wal.dir results in data loss because we write recovered edits into a different place than where the recovering region server looks for them 2018-06-15 19:40:48 -07:00
taiynlee 0e43abc78a HBASE-20737 put collection into ArrayList instead of addAll function
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2018-06-16 03:25:42 +08:00
Xu Cang 86653c708f HBASE-20695 Implement table level RegionServer replication metrics
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2018-06-15 10:38:49 +08:00
jingyuntian 0b28155d27 HBASE-20625 refactor some WALCellCodec related code
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2018-06-14 19:37:01 +08:00
zhangduo 423a0ab71a HBASE-20722 Make RegionServerTracker only depend on children changed event 2018-06-14 08:36:37 +08:00
Guanghao Zhang ec66434380 HBASE-20561 The way we stop a ReplicationSource may cause the RS down 2018-06-13 17:58:59 +08:00
tedyu edf60b965b HBASE-20672 Adding new Metrics readRequestRate and writeRequestRate - revert pending discussion 2018-06-11 18:47:30 -07:00
Balazs Meszaros c323e7bfaa
HBASE-20656 Validate pre-2.0 coprocessors against HBase 2.0+
Signed-off-by: Mike Drob <mdrob@apache.org>
2018-06-11 10:26:58 -05:00
Mike Drob eb13cdd7ed HBASE-20707 Move MissingSwitchDefault case check
Perform this check using error-prone instead of checkstyle because the
former can handle enum switches somewhat more intelligently.
2018-06-11 09:57:50 -05:00
zhangduo 573b57d437 HBASE-20700 Move meta region when server crash can cause the procedure to be stuck 2018-06-11 14:57:31 +08:00
Guanghao Zhang cc7aefe0bb HBASE-20698 (addendum) Master don't record right server version until new started region server call regionServerReport method 2018-06-10 08:23:28 +08:00
Guanghao Zhang 5fd16f3853 HBASE-20698 Master don't record right server version until new started region server call regionServerReport method 2018-06-09 14:40:43 +08:00
Ankit 519236b4af HBASE-20672 Adding new Metrics readRequestRate and writeRequestRate
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-06-08 13:48:33 -07:00
Nihal Jain 30a052b3e5 HBASE-20699 QuotaCache should cancel the QuotaRefresherChore service inside its stop()
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-06-08 04:30:52 -07:00
Michael Stack cfeb26d27a HBASE-20702 Processing crash, skip ONLINE'ing empty rows
Signed-off-by: Josh Elser <elserj@apache.org>
2018-06-07 09:54:57 -07:00
eric-maynard 9a80907760 HBASE-20665: Changed log level of HBASE-8547 warning to debug
Closes #77

Signed-off-by: Josh Elser <elserj@apache.org>
Signed-off-by: Sean Busbey <busbey@apache.org>
2018-06-07 11:34:33 -04:00
Peter Somogyi cfd4b7d564 HBASE-20683 Incorrect return value for PreUpgradeValidator
Signed-off-by: Ted Yu <yuzhihong@gmail.com>
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2018-06-06 20:03:56 +02:00
Andrew Purtell a45763df55 HBASE-20670 NPE in HMaster#isInMaintenanceMode 2018-06-04 15:19:47 -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
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
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
Andrew Purtell da3ecf1f13 Revert "HBASE-18116 fix replication source in-memory calculation by excluding bulk load file"
This reverts commit 6f3f34227e.
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
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
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 dcfa01448c.
2018-05-30 14:44:22 -07:00
Andrew Purtell dcfa01448c TestWALProcedureStoreOnHDFS failing on branch-1 2018-05-30 13:45:38 -07:00
zhangduo 997747076d HBASE-20659 Implement a reopen table regions procedure 2018-05-30 20:03:25 +08: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
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 9fbce1668b.
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
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
meiyi 36f3d9432a HBASE-20518 Need to serialize the enabled field for UpdatePeerConfigProcedure
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-05-25 14:36:16 +08:00
Thiruvel Thirumoolan 1fbce10ff4 HBASE-20548 Master fails to startup on large clusters, refreshing block distribution
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-05-24 15:47:24 -07:00
Toshihiro Suzuki 554d513f50 HBASE-20616 TruncateTableProcedure is stuck in retry loop in TRUNCATE_TABLE_CREATE_FS_LAYOUT state
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-05-24 15:16:30 -07:00
Nihal Jain 09dac89908 HBASE-20588 Space quota change after quota violation doesn't seem to take in effect
Signed-off-by: Josh Elser <elserj@apache.org>
2018-05-24 12:40:55 -04:00
Guanghao Zhang 320a3332e0 HBASE-20589 Don't need to assign meta to a new RS when standby master become active 2018-05-24 11:26:48 +08:00
zhangduo ee540c9f9e HBASE-20624 Race in ReplicationSource which causes walEntryFilter being null when creating new shipper 2018-05-24 10:48:29 +08:00
Andrew Purtell 9fbce1668b HBASE-20597 Use a lock to serialize access to a shared reference to ZooKeeperWatcher in HBaseReplicationEndpoint 2018-05-23 16:46:22 -07:00
Michael Stack 079f168c5c HBASE-20620 HBASE-20564 Tighter ByteBufferKeyValue Cell Comparator; part 2
Adds new stripped-down, faster ByteBufferKeyValue comparator
(BBKV is the base Cell-type in hbase2). Creates an instance
of new Comparator each time we create new memstore rather
than use the universal CellComparator.

Remove unused and unneeded Interfaces from Cell base type.
2018-05-23 13:20:47 -07:00
huzheng 5721150c6d HBASE-20612 TestReplicationKillSlaveRSWithSeparateOldWALs sometimes fail because it uses an expired cluster conn 2018-05-23 12:07:01 +08:00
tedyu 6c1097e92f HBASE-20609 SnapshotHFileCleaner#init should check that params is not null 2018-05-21 18:36:38 -07:00
jingyuntian c9f8c3436f HBASE-20579 Improve snapshot manifest copy in ExportSnapshot
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-05-18 06:42:12 -07:00
Guanghao Zhang 0836b0719a HBASE-20583 SplitLogWorker should handle FileNotFoundException when split a wal 2018-05-18 14:29:41 +08:00
Balazs Meszaros 6148b4785d HBASE-20571 JMXJsonServlet generates invalid JSON if it has NaN in metrics
- CacheStats won't generate NaN metrics.
- JSONBean class will serialize special floating point values as
  "NaN", "Infinity" or "-Infinity"

Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-05-16 12:20:39 -07:00
Apekshit Sharma 8c9825a030 HBASE-20567 Pass both old and new descriptors to pre/post hooks of modify operations for table and namespace.
Signed-off-by: Mike Drob <mdrob@apache.org>
2018-05-16 14:03:18 -05:00
Michael Stack 438af9bf74
HBASE-20564 Tighter ByteBufferKeyValue Cell Comparator; ADDENDUM
Add method the CellComparator Interface. Add implementation to
meta comparator so we don't fall back to the default comparator.

Includes a nothing change to hbase-server/pom.xml just to provoke
build.
2018-05-16 09:43:16 -07:00
Michael Stack 060b8aca86
HBASE-20520 Failed effort upping default HDFS blocksize, hbase.regionserver.hlog.blocksize 2018-05-16 09:19:24 -07:00
zhangduo ab53329cb3 HBASE-20585 Need to clear peer map when clearing MasterProcedureScheduler 2018-05-16 08:46:29 +08:00
zhangduo 26babcf013 HBASE-20457 Return immediately for a scan rpc call when we want to switch from pread to stream 2018-05-15 20:56:20 +08:00
Zach York d2daada970 HBASE-20447 Only fail cacheBlock if block collisions aren't related to next block metadata
When we pread, we don't force the read to read all of the next block header.
However, when we get into a race condition where two opener threads try to
cache the same block and one thread read all of the next block header and
the other one didn't, it will fail the open process. This is especially important
in a splitting case where it will potentially fail the split process.
Instead, in the caches, we should only fail if the required blocks are different.

Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-05-14 17:16:54 -07:00
huzheng eabe672ebd HBASE-20560 Revisit the TestReplicationDroppedTables ut 2018-05-14 19:12:43 +08:00
Michael Stack 021f66d11d
HBASE-20411 Ameliorate MutableSegment synchronize
Change the MemStore size accounting so we don't synchronize across three
volatiles applying deltas. Instead:

 + Make MemStoreSize, a datastructure of our memstore size longs, immutable.
 + Undo MemStoreSizing being an instance of MemStoreSize; instead it has-a.
 + Make two MemStoreSizing implementations; one thread-safe, the other not.
 + Let all memory sizing longs run independent, untied by
   synchronize (Huaxiang and Anoop suggestion) using atomiclongs.
 + Review all use of MemStoreSizing. Many are single-threaded and do
   not need to be synchronized; use the non-thread safe counter.

TODO: Use this technique accounting at the global level too.
2018-05-12 02:17:50 +01:00
Sean Busbey 8ba2a7eeb9 HBASE-20544 Make HBTU default to random ports.
Signed-off-by: Umesh Agashe <uagashe@cloudera.com>
Signed-off-by: Josh Elser <elserj@apache.org>
2018-05-09 23:35:20 -07:00
Thiruvel Thirumoolan a67909d3d6 HBASE-20545 Improve performance of BaseLoadBalancer.retainAssignment
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-05-09 19:48:27 -07:00
Andrew Purtell 32dd633b98 HBASE-20554 "WALs outstanding" message from CleanerChore is noisy 2018-05-09 19:08:35 -07:00
Zach York 9c046c091c HBASE-20204 Add locking to RefreshFileConnections in BucketCache
This is a follow-up to HBASE-20141 where Anoop suggested adding locking
for refreshing channels.
2018-05-09 14:01:51 -07:00
Michael Stack 4f2dfd3877 HBASE-20539 Disable IMC; part 2
Set default for in-memory compaction to NONE. PE was using
this value creating its table. Add test to ensure expected
default.
2018-05-09 06:30:28 -07:00
Nihal Jain f8281aa208 HBASE-20485 Copy constructor of Scan doesn't copy the readType and replicaId
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2018-05-09 16:39:57 +08:00
Guanghao Zhang 3a2a76f6f8 HBASE-20536 Make TestRegionServerAccounting stable and it should not use absolute number 2018-05-08 08:20:48 +08:00
Michael Stack bb1a935636 HBASE-20538 TestSaslFanOutOneBlockAsyncDFSOutput failing: UnrecoverableKeyException: Rejected by the jceks.key.serialFilter or jdk.serialFilter property
Disable test TestSaslFanOutOneBlockAsyncDFSOutput for the moment.
Depends on HDFS-13494
2018-05-07 09:54:32 -07:00
huzheng 971f5350e8 HBASE-20531 RS may throw NPE when close meta regions in shutdown procedure. 2018-05-06 11:18:23 +08:00
jingyuntian 87f5b5f341 HBASE-20378 Provide a hbck option to cleanup replication barrier for a table
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-05-04 15:27:33 +08:00
huzheng 6225b4a492 HBASE-20481 Replicate entries from same region serially in ReplicationEndpoint for serial replication 2018-05-04 15:22:02 +08:00
Guanghao Zhang 9b9f851470 HBASE-20524 Need to clear metrics when ReplicationSourceManager refresh replication sources 2018-05-04 14:31:41 +08:00
Michael Stack 09ca619389
HBASE-20507 Do not need to call recoverLease on the broken file when we fail to create a wal writer 2018-05-03 12:30:13 -07:00
Chia-Ping Tsai 4cb444e77b
HBASE-20169 NPE when calling HBTU.shutdownMiniCluster (TestAssignmentManagerMetrics is flakey); AMENDMENT 2018-05-02 16:14:58 -07:00
Umesh Agashe c4b4023b60 HBASE-20514 On Master restart if table is stuck in DISABLING state, CLOSED regions should not be considered stuck in-transition
On startup CLOSED regions of DISABLED and DISABLING tables are treated the same way as not in-transition.
2018-05-02 12:18:24 -07:00
tedyu 2e9b96e4f1 HBASE-20414 TestLockProcedure#testMultipleLocks may fail on slow machine 2018-05-02 06:39:51 -07:00
zhangduo 5bdb52af2f HBASE-20507 Do not need to call recoverLease on the broken file when we fail to create a wal writer 2018-05-02 10:26:55 +08:00
Michael Stack 5a071dbe2b HBASE-20492 UnassignProcedure is stuck in retry loop on region stuck in OPENING state
Add backoff when stuck in RegionTransitionProcedure, the subclass of
AssignProcedure and UnassignProcedure. Can happen when we go to
transition but the current Region state is not what we expect.

M hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/Procedure.java
 Add doc on being able to suspend and wait on a timeout.

M hbase-protocol-shaded/src/main/protobuf/MasterProcedure.proto
 Add 'attempt' counter so we can do backoff when we get stuck.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignProcedure.java
M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.java
 Add persistence of new 'attempt' counter

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.java
 Doc data members that are persisted by subclasses given this is 'odd'.
 Add a counter for 'attempts' used when 'stuck' to implement backoff.
 Add suspend with timeout when 'stuck'. Add callback when timeout is
 exhausted which does wakeup of this procedure.

A hbase-server/src/test/java/org/apache/hadoop/hbase/master/assignment/TestUnexpectedStateException.java
 Test of backoff.
2018-04-30 20:40:22 -07:00
Nihal Jain 6d080762ef HBASE-20499 Replication/Priority executors can use specific max queue length as default value instead of general maxQueueLength
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-04-30 07:42:32 -07:00
huzheng a136303833 HBASE-20497 The getRecoveredQueueStartPos always return 0 in RecoveredReplicationSourceShipper
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-04-28 20:50:30 +08:00
zhangduo 4be96dd8a6 HBASE-20476 Open sequence number could go backwards in AssignProcedure 2018-04-28 06:49:50 +08:00
Balazs Meszaros 650340abb5 HBASE-20487 Sorting table regions by region name does not work on web UI
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-04-27 11:13:00 -07:00
huzheng e9a278adc6 HBASE-20475 Fix the flaky TestReplicationDroppedTables unit test - addendum 2018-04-27 21:38:15 +08:00
zhangduo 39cf42be9a HBASE-20476 Add more logs for debugging 2018-04-27 16:02:05 +08:00
zhangduo 96ed407c69 HBASE-20476 Fix the flaky TestReplicationSmallTests unit test 2018-04-27 10:25:52 +08:00
Sakthi f761689136 HBASE-20040 Fixed: Master UI should include "Cluster Key" needed to use the cluster as a replication sink
Signed-off-by: Sean Busbey <busbey@apache.org>
2018-04-26 06:43:55 -05:00
huzheng 12c45cb2e8 HBASE-20475 Fix the flaky TestReplicationDroppedTables unit test. 2018-04-25 11:21:59 +08:00
Rich Fecher a8be3bb814 HBASE-20466 Consistently use override mechanism for exempt classes in CoprocessorClassloader
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-04-23 07:47:30 -07:00
Michael Stack 1633d9d61d HBASE-20470 [2.0.0RC1] has broken unit tests...
Fix test that depended upon flush being slow and one family only.
Fix MemStoreSize compare to allow passing alternate implementation
(needed when IMC was no longer default everywhere).
2018-04-22 15:33:25 -07:00
Huaxiang Sun e22f9e2d97 HBASE-19924 hbase rpc throttling does not work for multi() with request count rater. 2018-04-20 16:54:03 -07:00
Nihal Jain 758f4296a4 HBASE-20450 Provide metrics for number of total active, priority and replication rpc handlers
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-04-20 16:24:32 -07:00
Toshihiro Suzuki 4e183748c7 HBASE-20006 TestRestoreSnapshotFromClientWithRegionReplicas is flakey
Signed-off-by: Ted Yu <yuzhihong@gmail.com>
Signed-off-by: Sean Busbey <busbey@apache.org>
2018-04-20 10:51:11 -05:00
Sean Busbey 914de11416 HBASE-20442 clean up incorrect use of commons-collections 3
Signed-off-by: Umesh Agashe <uagashe@cloudera.com>
Signed-off-by: Yu Li <liyu@apache.org>
2018-04-20 07:30:34 -05:00
Sean Busbey 09749f1574 HBASE-20440 Clean up incorrect use of commons-lang 2.y
Signed-off-by: Umesh Agashe <uagashe@cloudera.com>
Signed-off-by: Yu Li <liyu@apache.org>
2018-04-20 07:29:23 -05:00
Sean Busbey b1fc00e16f HBASE-20439 Clean up incorrect use of commons-logging in hbase-server
Signed-off-by: Umesh Agashe <uagashe@cloudera.com>
Signed-off-by: Yu Li <liyu@apache.org>
2018-04-20 07:27:18 -05:00
jingyuntian 556b223744 HBASE-18059 remove scanner order related code 2018-04-18 19:38:08 -07:00
Umesh Agashe 6ca8261fc0 HBASE-18792 Disabled destructive (mostly write) operations in hbck for HBase 2.0+
HBase server versioned is checked after connecting to the server and then following operations are not allowed:
-fix, -fixAssignments, -fixMeta, -fixHdfsHoles, -fixHdfsOrphans, -fixTableOrphans, -fixHdfsOverlaps, -maxMerge
-sidelineBigOverlaps, -maxOverlapsToSideline, -fixSplitParents, -removeParents, -fixEmptyMetaCells
-repair, -repairHoles
2018-04-18 15:22:39 -07:00
Nihal Jain 6ce1136eba HBASE-20452 Master UI: Table merge button should validate required fields before submit
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-04-18 14:55:12 -07:00
wangyu 80cbc0d1fe HBASE-20449 The minimun number of region should be configurable in Normalizer
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-04-18 08:45:52 -07:00
Sean Busbey 824ee525df HBASE-20404 Fixes to CleanChore correctness and operability.
* Make CleanerChore less chatty: move WARN message to DEBUG when we expect non-empty dirs
* Make CleanerChore less chatty: move IOE we'll retry to INFO
* CleanerChore should treat IOE for FileStatus as a failure
* Add tests asserting assumptions in above

Signed-off-by: Reid Chan <reidddchan@outlook.com>
Signed-off-by: Mike Drob <mdrob@apache.org>
2018-04-17 11:32:44 -05:00
Balazs Meszaros b926d359b2 HBASE-20398 Redirect doesn't work on web UI 2018-04-17 09:18:52 -07:00
Balazs Meszaros 32764bfb2c HBASE-20399 Fix merge layout 2018-04-17 09:17:25 -07:00
huzheng 42d5447cfb HBASE-20128 Add new UTs which extends the old replication UTs but set replication scope to SERIAL 2018-04-17 10:56:21 +08:00
Huaxiang Sun 1fe3d6a0e9 HBASE-19994 Create a new class for RPC throttling exception, make it retryable 2018-04-16 17:27:14 -07:00
Wei-Chiu Chuang 44ebd28093 HBASE-19963 TestFSHDFSUtils assumes wrong default port for Hadoop 3.0.1+
Signed-off-by: Mike Drob <mdrob@apache.org>
2018-04-16 12:00:17 -05:00
zhangduo 773aff90fd HBASE-20417 Do not read wal entries when peer is disabled 2018-04-16 22:07:33 +08:00
lujie 1339ff9666 HBASE-20419 Fix potential NPE in ZKUtil#listChildrenAndWatchForNewChildren callers
Signed-off-by: Yu Li <liyu@apache.org>
2018-04-16 16:06:57 +08:00
Peter Somogyi 125767b44e HBASE-20409 Set hbase.client.meta.operation.timeout in TestClientOperationTimeout
Signed-off-by: Ted Yu <yuzhihong@gmail.com>
2018-04-15 10:12:00 +02:00
zhangduo edf5049502 HBASE-20294 Also cleanup last pushed sequence id in ReplicationBarrierCleaner 2018-04-14 14:56:18 +08:00
zhangduo 5a633adffe HBASE-20377 Deal with table in enabling and disabling state when modifying serial replication peer 2018-04-13 20:33:29 +08:00
Guangxu Cheng 5a69465ea0 HBASE-20243 [Shell] Add shell command to create a new table by cloning the existent table
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-04-11 19:33:56 -07:00
Apekshit Sharma 281c29ff60 HBASE-20350 NullPointerException in Scanner during close() 2018-04-11 14:34:57 -07:00
Umesh Agashe 199b392ec8 HBASE-20310 Fixed false inconsistency shown by hbck -metaonly option on HBase 2
When -metaonly option is specified then tablesInfo is not populated for all tables from hdfs causing false inconsistency of dangling state in meta.
2018-04-11 12:51:12 -07:00
Toshihiro Suzuki 072c503ec7 HBASE-20219 An error occurs when scanning with reversed=true and loadColumnFamiliesOnDemand=true
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-04-11 09:59:45 -07:00
Balazs Meszaros 35b4adf3ed HBASE-20382 If RSGroups not enabled, rsgroup.jsp prints stack trace 2018-04-11 09:50:07 -07:00
Michael Stack ba02a8664b HBASE-20384 [AMv2] Logging format improvements; use encoded name rather than full region name marking transitions 2018-04-11 08:35:54 -07:00
zhangduo 37e5b0b1b7 HBASE-20367 Write a replication barrier for regions when disabling a table 2018-04-11 20:36:51 +08:00
Ashish Singhi 828a1c76c7 HBASE-15291 FileSystem not closed in secure bulkLoad
Signed-off-by: Ashish Singhi <ashishsinghi@apache.org>
2018-04-11 12:01:28 +05:30
zhangduo bc35de597d HBASE-20363 Addendum wait until region is splittable 2018-04-09 09:07:06 +08:00
zhangduo f66343050f HBASE-20363 TestNamespaceAuditor.testRegionMerge is flaky 2018-04-08 16:48:25 +08:00
zhangduo 852025dd00 HBASE-20362 TestMasterShutdown.testMasterShutdownBeforeStartingAnyRegionServer is flaky 2018-04-08 16:09:50 +08:00
zhangduo adc0e85e85 HBASE-20182 Can not locate region after split and merge 2018-04-07 13:37:53 +08:00
tedyu 8f6849ff02 HBASE-20095 Redesign single instance pool in CleanerChore - addendum simplifies onConfigurationChange 2018-04-05 10:24:37 -07:00
BELUGA BEHR d866e7c658 HBASE-19488 Move to using Apache commons CollectionUtils
Signed-off-by: Apekshit Sharma <appy@apache.org>
2018-04-04 14:12:19 -07:00
Ashish Singhi 5937202fd5 HBASE-16499 slow replication for small HBase clusters
Signed-off-by: Ashish Singhi <ashishsinghi@apache.org>
2018-04-04 09:54:41 +05:30
Michael Stack b1b0db3195 HBASE-20298 Doc change in read/write/total accounting metrics 2018-04-03 17:00:43 -07:00
Michael Stack c88ca54c16 HBASE-20259 Doc configs for in-memory-compaction and add detail to
in-memory-compaction logging

Adds logging of CompactingMemStore configuration on construction.

Add logging of detail about Store on creation including memstore type.

Add chapter to refguide on new in-memory compaction feature.
2018-04-02 09:53:12 -07:00
zhangduo 1e56938757 HBASE-20296 Remove last pushed sequence ids when removing tables from a peer 2018-04-01 21:14:31 +08:00
Jan Hentschel 97b3a04019 HBASE-17631 Changed Canary interval to 60 seconds 2018-04-01 13:03:52 +02:00
Mike Drob d57001ee2d HBASE-20282 Clean up tooling docs/help 2018-03-30 08:59:47 -07:00
tedyu e60f34fdb5 HBASE-20159 Support using separate ZK quorums for client - addendum fixes flaky TestSeparateClientZKCluster 2018-03-30 07:19:47 -07:00
Vasudevan cbd8b15e6b HBASE-20197 Review of ByteBufferWriterOutputStream.java (BELUGA BEHR)
Signed-off-by: Vasudevan <ramkrishna.s.vasudevan@gmail.com>
2018-03-30 12:13:41 +05:30
Mike Drob 621e2b5f5e HBASE-20273 Additional removed/changed configs 2018-03-29 11:47:14 -07:00
Yu Li 061a31fad1 HBASE-20159 Support using separate ZK quorums for client 2018-03-29 02:37:26 +08:00
Josh Elser 69f5d707b6 HBASE-20199 Add a unit test to verify flush and snapshot permission requirements aren't excessive
Signed-off-by: Ted Yu <yuzhihong@gmail.com>
Signed-off-by: Michael Stack <stack@apache.org>
2018-03-27 20:17:08 -04:00
Zach York 09ed7c7a10 HBASE-20280 Fix possibility of deadlocking in refreshFileConnections
When prefetch on open is specified, there is a deadlocking case
where if the prefetch is cancelled, the PrefetchExecutor interrupts
the threads if necessary, when that happens in FileIOEngine, it
causes an ClosedByInterruptException which is a subclass of
ClosedChannelException. If we retry all ClosedChannelExceptions,
this will lock as this access is expected to be interrupted.
This change removes calling refreshFileConnections for
ClosedByInterruptExceptions.

Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-03-27 16:53:01 -07:00
Rajeshbabu Chintaguntla d87139989f HBASE-20111 A region's splittable state now includes the configuration splitPolicy
The Master asks a RegionServer whether a Region can be split or not, primarily to
verify that the region is not closing, opening, etc. This change has the RegionServer
also consult the configured RegionSplitPolicy.

Signed-off-by: Josh Elser <elserj@apache.org>
2018-03-27 18:42:49 -04:00
zhangduo 056c3395d9 HBASE-20285 Delete all last pushed sequence ids when removing a peer or removing the serial flag for a peer 2018-03-27 12:20:51 +08:00
Josh Elser 15c398f7d2 HBASE-20223 Update to hbase-thirdparty 2.1.0
Remove commons-cli and commons-collections4 use. Account
for the newer internal protobuf version of 3.5.1.

Signed-off-by: Michael Stack <stack@apache.org>
Signed-off-by: Mike Drob <mdrob@apache.org>
2018-03-26 22:05:19 -04:00
Toshihiro Suzuki ff5250ca2b HBASE-20229 ConnectionImplementation.locateRegions() returns duplicated entries when region replication is on 2018-03-26 15:09:20 -07:00
Yuki Tawara 4cedd9914b HBASE-20289 Fix comparator for NormalizationPlan
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-03-26 14:30:25 -07:00
Reid Chan 83fa0ad9ed HBASE-20095 Redesign single instance pool in CleanerChore 2018-03-26 12:48:31 -05:00
zhangduo e9701a0595 HBASE-20127 Add UT for serial replication after failover 2018-03-26 20:16:02 +08:00
anoopsamjohn 3f7222df36 HBASE-17819 Reduce the heap overhead for BucketCache. 2018-03-25 16:36:30 +05:30
tedyu b50b2e51bf HBASE-20272 TestAsyncTable#testCheckAndMutateWithTimeRange fails due to TableExistsException 2018-03-24 06:27:20 -07:00
zhangduo c44e886860 HBASE-20271 ReplicationSourceWALReader.switched should use the file name instead of the path object directly 2018-03-24 21:12:40 +08:00
Jan Hentschel 64ccd2b295 HBASE-13300 Fixed casing in set/getTimeStamp for Mutations 2018-03-23 17:23:22 -07:00
Sakthi b8f999bf33 HBASE-20135 Fixed NullPointerException during reading bloom filter when upgraded from hbase-1 to hbase-2 2018-03-23 15:21:51 -07:00
Toshihiro Suzuki 88eac3ca18 HBASE-20261 Table page (table.jsp) in Master UI does not show replicaIds for hbase meta table
Signed-off-by: Josh Elser <elserj@apache.org>
2018-03-23 15:31:30 -04:00
Chia-Ping Tsai ad47c2daf4 HBASE-19504 Add TimeRange support into checkAndMutate
Signed-off-by: Michael Stack <stack@apache.org>
2018-03-24 00:12:38 +08:00
zhangduo 64061f896f HBASE-20147 Serial replication will be stuck if we create a table with serial replication but add it to a peer after there are region moves 2018-03-23 14:31:20 +08:00
Umesh Agashe c614b9f3e8 HBASE-20224 Web UI is broken in standalone mode
Changes for HBASE-20027 seem to cause UI not showing up on default port in standalone mode. For concurrent
unit test execution, individual tests can set hbase.localcluster.assign.random.ports to true or modify
test/resources/hbase-site.xml.
2018-03-22 20:27:39 -07:00
Michael Stack 5d1b2110d1
Revert "HBASE-20224 Web UI is broken in standalone mode"
Broke shell tests.

This reverts commit dd9fe813ec.
2018-03-22 10:57:42 -07:00
Umesh Agashe 4cb40e6d84 HBASE-20224 Web UI is broken in standalone mode
Changes for HBASE-20027 seem to cause UI not showing up on default port in standalone mode. For concurrent
unit test execution, individual tests can set hbase.localcluster.assign.random.ports to true or modify
test/resources/hbase-site.xml.
2018-03-22 06:52:20 -07:00
Chia-Ping Tsai a6eeb26cc0 HBASE-20212 Make all Public classes have InterfaceAudience category
Signed-off-by: tedyu <yuzhihong@gmail.com>
Signed-off-by: Michael Stack <stack@apache.org>
2018-03-22 18:10:23 +08:00
Peter Somogyi 68b2f5502a HBASE-17449 Add explicit document on different timeout settings 2018-03-22 12:06:22 +05:30
Michael Stack 9601ab2272 HBASE-20237 Put back getClosestRowBefore and throw UnsupportedOperation instead... for asynchbase client Throw exception if an old client connects. 2018-03-21 21:51:25 -07:00
zhangduo d7475b92e8 HBASE-20242 The open sequence number will grow if we fail to open a region after writing the max sequence id file 2018-03-22 08:42:36 +08:00
Andrew Purtell 17ac2fe9c1 HBASE-19024 Provide a configurable option to hsync WAL edits to the disk for better durability (Harshal Jain) 2018-03-20 21:07:59 -07:00
tedyu e7cfdac7b5 HBASE-20090 Properly handle Preconditions check failure in MemStoreFlusher.run 2018-03-20 21:02:09 -07:00
Michael Stack acbdb86bb4 HBASE-20169 NPE when calling HBTU.shutdownMiniCluster
Adds a prepare step to RecoverMetaProcedure in which we test for
cluster up and master being up. If not up, we fail the run.

Modified hbase-server/src/main/java/org/apache/hadoop/hbase/master/cleaner/HFileCleaner.java
Modified hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/ChunkCreator.java
 Minor log cleanup.

Modified hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/RecoverMetaProcedure.java
 Add pepare step.

Modified hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManagerMetrics.java
 Debug for the failing test....

Added hbase-server/src/test/java/org/apache/hadoop/hbase/master/procedure/TestRecoverMetaProcedure.java
 Test the prepare step goes down if master or cluster are down.
2018-03-20 13:11:57 -07:00
Michael Stack 74c28bdf44 HBASE-20232 [LOGGING] Formatting around close and flush 2018-03-20 10:34:49 -07:00
tedyu 2a3f4a0a4e HBASE-20214 Review of RegionLocationFinder Class - revert due to the pending removal of commons-collections4 dependency 2018-03-19 16:52:27 -07:00
tedyu df5de33a02 HBASE-20196 Maintain all regions with same size in memstore flusher 2018-03-19 08:10:39 -07:00
zhangduo 67f013430c HBASE-20206 WALEntryStream should not switch WAL file silently 2018-03-19 11:40:11 +08:00
zhangduo 00095a2ef9 Revert "HBASE-19665 Add table based replication peers/queues storage back"
This reverts commit 31978c31bb.

 Conflicts:
	hbase-replication/src/main/java/org/apache/hadoop/hbase/replication/TableReplicationStorageBase.java
2018-03-17 20:25:27 +08:00
BELUGA BEHR 104f58701e HBASE-20214 Review of RegionLocationFinder Class 2018-03-16 16:09:40 -07:00
Michael Stack bedf849d83 HBASE-20213 [LOGGING] Aligning formatting and logging less (compactions,
in-memory compactions)

Log less. Log using same format as used elsewhere in log.

Align logs in HFileArchiver with how we format elsewhere. Removed
redundant 'region' qualifiers, tried to tighten up the emissions so
easier to read the long lines.

M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/ChunkCreator.java
 Add a label for each of the chunkcreators we make (I was confused by
two chunk creater stats emissions in log file -- didn't know that one
was for data and the other index).

M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/CompactSplit.java
 Formatting. Log less.

M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.java
 Make the emissions in here trace-level. When more than a few regions,
log is filled with this stuff.
2018-03-16 13:16:49 -07:00
Zach York aaa90d8069 [HBASE-20141] Fix TooManyFiles exception when RefreshingChannels
HBASE-19435 implements a fix for reopening file channels when they are unnexpected closed
to avoid disabling the BucketCache. However, it was missed that the the channels might not
actually be completely closed (the write or read channel might still be open
(see https://docs.oracle.com/javase/7/docs/api/java/nio/channels/ClosedChannelException.html)
This commit closes any open channels before creating a new channel.
2018-03-16 10:51:39 -07:00
Michael Stack 13f3ba3cee HBASE-20202 [AMv2] Don't move region if its a split parent or offlined
M hbase-client/src/main/java/org/apache/hadoop/hbase/client/DoNotRetryRegionException.java
M hbase-client/src/main/java/org/apache/hadoop/hbase/exceptions/MergeRegionException.java
 Allow passing cause to Constructor.

M hbase-protocol-shaded/src/main/protobuf/MasterProcedure.proto
 Add prepare step to move procedure.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
 Add check that regions to merge are actually online to the Constructor
so we can fail fast if they are offline

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MoveRegionProcedure.java
 Add prepare step. Check regions and context and skip move if not right.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.java
 Add check parent region is online to constructor.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/AbstractStateMachineTableProcedure.java
 Add generic check region is online utility function for use by subclasses.

M hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionMove.java
 Add test that we fail if we try to move an offlined region.
2018-03-16 09:35:33 -07:00
Michael Stack c200bf8f78
HBASE-20190 Fix default for MIGRATE_TABLE_STATE_FROM_ZK_KEY 2018-03-15 10:34:02 -07:00
Chia-Ping Tsai 4f2133ee32 HBASE-20119 Introduce a pojo class to carry coprocessor information in order to make TableDescriptorBuilder accept multiple cp at once
Signed-off-by: Ted Yu <yuzhihong@gmail.com>
Signed-off-by: Michael Stack <stack@apache.org>
2018-03-16 01:21:38 +08:00
Ashish Singhi 82483fad7c HBASE-20146 Addendum Regions are stuck while opening when WAL is disabled
Signed-off-by: zhangduo <zhangduo@apache.org>
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2018-03-15 10:13:30 +08:00
Michael Stack d0e55429b3 HBASE-20178 [AMv2] Throw exception if hostile environment
Add Fail-Fast to Procedures by throwing exception out of Procedure
constructor so if move but table is disabled or if master is going
down, etc., we can give notice before the procedure is scheduled.
Will help guard against scheduling Procedures that will have a hard
time succeeding; e.g. a move when table is offline.

Also fixed bug around table state where we presumed ENABLED though no
entry in hbase:meta (we were using this mechanism for whether a table
existed or not).

M hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionMove.java
 Test stolen from HBASE-20131

M hbase-client/src/main/java/org/apache/hadoop/hbase/client/TableState.java
 Add convenience isEnabled/isDisabled

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
 Promote assert state to throw exception.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterServices.java
 Add isClusterUp

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
 Move constructor now throws exception
M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MoveRegionProcedure.java
M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.java
M hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/DisableTableProcedure.java
M hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/ModifyTableProcedure.java
M hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.java
M hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.java
 Do environment check at construction and fail-fast if hostile.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/AbstractStateMachineTableProcedure.java
 Add preflightCheck utility method.

M hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
 Removed setting time setting table state; broke when using other than
 default environment edge masked by presumption that no state meant
 active.
2018-03-14 14:56:22 -07:00
Mike Drob f63a7ff635 HBASE-20180 Avoid Class::newInstance 2018-03-14 13:15:05 -05:00
Apekshit Sharma 84ee32c723 HBASE-20185 Fix ACL check for MasterRpcServices#execProcedure 2018-03-14 19:02:19 +05:30
Chance Li 4f54a66782 HBASE-19389 Limit concurrency of put with dense (hundreds) columns to prevent write handler exhausted
Signed-off-by: Yu Li <liyu@apache.org>
2018-03-14 18:38:33 +08:00
Yu Li 9a26af37b9 Revert "HBASE-19389 Limit concurrency of put with dense (hundreds) columns to prevent write handler exhausted"
This reverts commit 98ac4f12b5.
2018-03-14 18:38:07 +08:00
Yu Li 98ac4f12b5 HBASE-19389 Limit concurrency of put with dense (hundreds) columns to prevent write handler exhausted
Signed-off-by: Yu Li <liyu@apache.org>
2018-03-14 18:25:17 +08:00
huzheng 31978c31bb HBASE-19665 Add table based replication peers/queues storage back 2018-03-14 15:42:16 +08:00
zhangduo b7308ee01c HBASE-20117 Cleanup the unused replication barriers in meta table 2018-03-14 12:08:15 +08:00
Mike Grimes b16e03c130 HBASE-17165 Make use of retry setting in LoadIncrementalHFiles & fix test 2018-03-13 15:00:36 -07:00
Sahil Aggarwal 1b66444846 HBASE-19075: Fix the 'tasks' table on master info page to not scroll up on clicking the tab 2018-03-13 14:26:16 -07:00
Michael Stack 72c3d27bf6 HBASE-20173 [AMv2] DisableTableProcedure concurrent to ServerCrashProcedure can deadlock
Allow that DisableTableProcedue can grab a region lock before
ServerCrashProcedure can. Cater to this cricumstance where SCP
was not unable to make progress by running the search for RIT
against the crashed server a second time, post creation of all
crashed-server assignemnts. The second run will uncover such as
the above DisableTableProcedure unassign and will interrupt its
suspend allowing both procedures to make progress.

M hbase-protocol-shaded/src/main/protobuf/MasterProcedure.proto
 Add new procedure step post-assigns that reruns the RIT finder method.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
 Make this important log more specific as to what is going on.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.java
 Better explanation as to what is going on.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.java
 Add extra step and run handleRIT a second time after we've queued up
 all SCP assigns. Also fix a but. SCP was adding an assign of a RIT
 that was actually trying to unassign (made the deadlock more likely).
2018-03-13 06:04:36 -07:00
BELUGA BEHR f30dfc69bb HBASE-19449 Minor logging change in HFileArchiver
Signed-off-by: Apekshit Sharma <appy@apache.org>
2018-03-12 22:01:56 +05:30
zhangduo 6060d3ba56 HBASE-20167 Optimize the implementation of ReplicationSourceWALReader 2018-03-12 15:14:16 +08:00
Umesh Agashe 45bbee4905 HBASE-20120 Removed unused classes/ java files from hbase-server
deleted:    hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/NoOpHeapMemoryTuner.java
deleted:    hbase-server/src/main/java/org/apache/hadoop/hbase/replication/BaseWALEntryFilter.java
deleted:    hbase-server/src/main/java/org/apache/hadoop/hbase/util/FSMapRUtils.java
deleted:    hbase-server/src/main/java/org/apache/hadoop/hbase/util/ProtoUtil.java
Signed-off-by: Sean Busbey <busbey@apache.org>
Signed-off-by: tedyu <yuzhihong@gmail.com>
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2018-03-10 13:08:38 +08:00
Guangxu Cheng 70240f9732 HBASE-20132 Change the "KV" to "Cell" for web UI
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2018-03-10 12:27:59 +08:00
zhangduo dd6f4525e7 HBASE-20148 Make serial replication as a option for a peer instead of a table 2018-03-10 09:04:44 +08:00
Umesh Agashe 974200fca1 HBASE-20024 Fixed flakyness of TestMergeTableRegionsProcedure
We assumed that we can run for loop from 0 to lastStep sequentially. MergeTableRegionProcedure skips step 2. So, when i is 0 the procedure is already at step 3.
Added a method StateMachineProcedure#getCurrentStateId that can be used from test code only.
2018-03-09 12:45:39 -08:00
Ashish Singhi 06550bc93b HBASE-20146 Regions are stuck while opening when WAL is disabled
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-03-09 21:10:16 +08:00
zhangduo 756cccecff HBASE-19598 Addendum fix typo 2018-03-09 15:37:22 +08:00
zhangduo 04798d6747 HBASE-19598 Addendum increase sync wait time 2018-03-09 15:34:24 +08:00
zhangduo 033485dff3 HBASE-19598 Fix TestAssignmentManagerMetrics flaky test 2018-03-09 11:47:55 +08:00
zhangduo a513678a79 HBASE-20160 TestRestartCluster.testRetainAssignmentOnRestart uses the wrong condition to decide whether the assignment is finished 2018-03-09 11:08:44 +08:00
zhangduo a03d09abd7 HBASE-20144 The shutdown of master will hang if there are no live region server 2018-03-08 15:05:57 +08:00
Michael Stack 37d91cdfbb Revert "HBASE-20137 TestRSGroups is flakey"
Revert. Fix is not right.

This reverts commit 6d1740d498.
2018-03-07 09:26:21 -08:00
zhangduo 6b77786dfc HBASE-20125 Add UT for serial replication after region split and merge 2018-03-07 14:52:23 +08:00
Michael Stack 1f5e93a8f8 HBASE-20137 TestRSGroups is flakey
On failed RPC we expire the server and suspend expecting the
resultant ServerCrashProcedure to wake us back up again. In tests,
TestRSGroup hung because it failed to schedule a server expiration
because the server was already expired undergoing processing (the
test was shutting down). Deal with this case by having expire
servers return false if unable to expire. Callers will then know
where a ServerCrashProcedure has been scheduled or not.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java
  Have expireServer return true if successful.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.java
 The log that included an exception whose message was the current
procedure as a String totally baffled me. Make it more obvious what
exception is.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/UnassignProcedure.java
 If failed expire of a server, wake our procedure -- do not suspend --
and presume ok to move region to CLOSED state (because going down or
concurrent crashed server processing ongoing).
2018-03-06 10:55:40 -08:00
zhangduo 1384da7137 HBASE-20129 Add UT for serial replication checker 2018-03-06 16:43:01 +08:00
Josh Elser 4a4c012049 HBASE-18135 Implement mechanism for RegionServers to report file archival for space quotas
This de-couples the snapshot size calculation from the
SpaceQuotaObserverChore into another API which both the periodically
invoked Master chore and the Master service endpoint can invoke. This
allows for multiple sources of snapshot size to reported (from the
multiple sources we have in HBase).

When a file is archived, snapshot sizes can be more quickly realized and
the Master can still perform periodical computations of the total
snapshot size to account for any delayed/missing/lost file archival RPCs.

Signed-off-by: Ted Yu <yuzhihong@gmail.com>
2018-03-05 17:32:42 -05:00
zhangduo b7b8683925 HBASE-20115 Reimplement serial replication based on the new replication storage layer 2018-03-05 20:25:25 +08:00
haxiaolin 1d25b60831 HBASE-20114 Fix IllegalFormatConversionException in rsgroup.jsp
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-03-02 09:00:28 -08:00
Chia-Ping Tsai db131be39a HBASE-19437 Batch operation can't handle the null result for Append/Increment
Signed-off-by: anoopsamjohn <anoopsamjohn@gmail.com>
Signed-off-by: Michael Stack <stack@apache.org>
2018-03-02 23:31:56 +08:00
Sean Busbey 2a65066b35 HBASE-20070 refactor website generation
* rely on git plumbing commands when checking if we've built the site for a particular commit already
* switch to forcing '-e' for bash
* add command line switches for: path to hbase, working directory, and publishing
* only export JAVA/MAVEN HOME if they aren't already set.
* add some docs about assumptions
* Update javadoc plugin to consistently be version 3.0.0
* avoid duplicative site invocations on reactor modules
* update use of cp command so it works both on linux and mac
* manually skip enforcer plugin during build
* still doing install of all jars due to MJAVADOC-490, but then skip rebuilding during aggregate reports.
* avoid the pager on git-diff by teeing to a log file, which also helps later reviewing in the case of big changesets.

Signed-off-by: Michael Stack <stack@apache.org>
Signed-off-by: Misty Stanley-Jones <misty@apache.org>
2018-03-02 09:25:10 -06:00
huzheng 99d3edfc82 HBASE-20050 Reimplement updateReplicationPositions logic in serial replication based on the newly introduced replication storage layer
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-03-02 15:53:14 +08:00
Umesh Agashe e86ffedb45 HBASE-20055 Removed declaration of un-thrown exceptions and unused setRegionStateBackToOpen() from MergeTableRegionsProcedure
Plus some minor cleanup.
2018-03-01 08:46:23 -08:00
Chia-Ping Tsai 776eb5d9cb HBASE-20093 (addendum) remove unused import of ServerLoad
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-03-01 23:47:36 +08:00
Michael Stack 0732ef5ebf Revert "HBASE-19598 Fix TestAssignmentManagerMetrics flaky test"
Pushed prematurely. Revert.

This reverts commit 016cf0c64b.
2018-02-28 23:39:54 -08:00
Michael Stack 016cf0c64b HBASE-19598 Fix TestAssignmentManagerMetrics flaky test
Master never left waitForMasterActive because it never checked state of
the clusterUp flag. The test here was aborting regionserver and then
just exiting. The minihbasecluster shutdown sets the cluster down flag
but we were never looking at it so Master thread was staying up.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
The tableOnMaster check in waitForMasterActive looks wrong. It was
making it so a 'normal' Master was getting stuck in here. This is not
the place to worry about tablesOnMaster. That is for the balancer to be
concerned with. There is a problem with Master hosting
system-tables-only. After further study, Master can carry regions like a
regionserver but making it so it carries system tables only is tricky
given meta assign happens ahead of all others which means that the
Master needs to have checked-in as a regionserver super early... It
needs work. Punted for now.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
Mostly renaming so lists and maps of region infos have same name as they
have elsewhere in code base and cleaning up confusion that may arise
when we talk of servers-for-system-tables....It is talking about
something else in the code changes here that is other than the normal
understanding. It is about filtering regionservers by their version
numbers so we favor regions with higher version numbers. Needs to go
back up into the balancer.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java
It was possible for the Master to be given regions if no regionservers
available (as per the failing unit test in this case).

M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
Minor reordering moving the waitForMasterActive later in the initialize
and wrapping each test in a check if we are to keep looping (which
checks cluster status flag).

M hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManagerMetrics.java
This was an old test from the days when Master carried system tables.
Updated test and fixed metrics. Metrics count the hbase:meta along with
the userspace region so upped expected numbers (previously the
hbase:meta was hosted on the master so metrics were not incremented).

M hbase-server/src/test/java/org/apache/hadoop/hbase/master/balancer/TestRegionsOnMasterOptions.java
I took a look at this test again but nope, needs a load of work still to
make it pass.

M hbase-zookeeper/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java
Stop being so whiney.
2018-02-28 22:25:24 -08:00
Michael Stack 372c88abd6
HBASE-19656 Disable TestAssignmentManagerMetrics for beta-1 2018-02-28 21:30:44 -08:00
tedyu d7adc58e52 HBASE-20107 Add a test case for HBASE-14317 (Zephyr Guo) 2018-02-28 21:17:03 -08:00
Josh Elser bdedcc5631 HBASE-18133 Decrease quota reaction latency by HBase
Certain operations in HBase are known to directly affect
the utilization of tables on HDFS. When these actions
occur, we can circumvent the normal path and notify the
Master directly. This results in a much faster response to
changes in HDFS usage.

This requires FS scanning by the RS to be decoupled from
the reporting of sizes to the Master. An API inside each
RS is made so that any operation can hook into this call
in the face of other operations (e.g. compaction, flush,
bulk load).

Signed-off-by: Ted Yu <yuzhihong@gmail.com>
2018-02-28 14:11:20 -05:00
Sergey Soldatov 393ab302ab HBASE-19863 java.lang.IllegalStateException: isDelete failed when SingleColumnValueFilter is used
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
Signed-off-by: ramkrish86 <ramkrishna.s.vasudevan@gmail.com>
2018-02-28 13:58:37 -05:00
Vladimir Rodionov 6cfa208add HBASE-17825: Backup further optimizations
Signed-off-by: Josh Elser <elserj@apache.org>
2018-02-28 09:14:15 -05:00
Chia-Ping Tsai 62ee7d9502 HBASE-20097 Merge TableDescriptors#getAll and TableDescriptors#getAllDescriptors into one
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-02-28 15:21:21 +08:00
Chia-Ping Tsai 197bd79070 HBASE-20084 Refactor the RSRpcServices#doBatchOp
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-02-28 15:15:34 +08:00
Chia-Ping Tsai 7f6e971c4c HBASE-20093 Replace ServerLoad by ServerMetrics for ServerManager
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-02-28 14:57:50 +08:00
Michael Stack ba063abd2f HBASE-20100 TestEnableTableProcedure flakey
Allow OPEN as a possible state when update region transition state.
Usually state is OPENING but if crash before finish step is completed,
on replay, master may have read that the state is OPEN from meta table
and so will think it open... When we replay the procedure finish, allow
that the region is already OPEN.
2018-02-27 14:51:21 -08:00
BELUGA BEHR f01c90bc0e HBASE-19614 Use ArrayDeque as Queue instead of LinkedList in CompoundBloomFilterWriter
Signed-off-by: Apekshit Sharma <appy@apache.org>
2018-02-27 11:50:52 -08:00
gsheffi 0fa5d69fc7 HBASE-20074 [FindBugs] Same code on both branches in CompactingMemStore#initMemStoreCompactor
Signed-off-by: Michael Stack <stack@apache.org>
2018-02-27 11:21:40 -06:00
Sean Busbey e4ce38df32 Revert "for creating patch HBASE-20074-V01.patch"
This reverts commit 73028d5bd9.

bad commit message
2018-02-27 11:20:54 -06:00
Chia-Ping Tsai dbd8013057 HBASE-20092 Fix TestRegionMetrics#testRegionMetrics
Signed-off-by: Michael Stack <stack@apache.org>
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-02-27 16:48:17 +08:00
zhangduo f06a89b531 HBASE-20066 Region sequence id may go backward after split or merge 2018-02-27 15:33:07 +08:00
Michael Stack d272ac908c HBASE-20069 fix existing findbugs errors in hbase-server; ADDENDUM Address review 2018-02-26 23:16:21 -08:00
Michael Stack b11e506664 HBASE-20069 fix existing findbugs errors in hbase-server 2018-02-26 16:01:31 -08:00
gsheffi 73028d5bd9 for creating patch HBASE-20074-V01.patch
Signed-off-by: Michael Stack <stack@apache.org>
2018-02-26 09:57:22 -08:00
Vasudevan 7cfb46432f HBASE-20036 TestAvoidCellReferencesIntoShippedBlocks timed out (Ram) 2018-02-26 22:07:42 +05:30
zhangduo 2beda62a10 HBASE-20083 Fix findbugs error for ReplicationSyncUp 2018-02-26 22:13:13 +08:00
zhangduo 8c74d177f6 HBASE-20082 Fix findbugs errors only on master which are introduced by HBASE-19397 2018-02-26 15:50:51 +08:00
Michael Stack 549a6d93d4 HBASE-20043 ITBLL fails against hadoop3
Fix MoveRandomRegionOfTableAction. It depended on old AM behavior.
Make it do explicit move as is required in AMv3; w/o it, it was just
closing region causing test to fail.

Fix pom so hadoop3 profile specifies a different netty3 version.

Bunch of logging format change that came of trying trying to read
the spew from this test.
2018-02-24 17:29:54 -08:00
zhangduo ba5fb53d14 HBASE-20065 Revisit the timestamp usage in MetaTableAccessor 2018-02-25 09:13:56 +08:00
Sean Busbey f90b47e3b0 HBASE-20061 HStore synchronized member variable filesCompacting should be private
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2018-02-24 10:57:01 -06:00
tedyu 9a7645360b HBASE-20054 Forward port HBASE-18282 ReplicationLogCleaner can delete WALs not yet replicated in case of KeeperException 2018-02-23 19:14:52 -08:00
Sean Busbey 216d2d4648 Revert "HBASE-19835 Use explicit casting to avoid side effects"
This reverts commit f1a81618fd.

 Conflicts:
	hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
	hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/Segment.java

patch reverted changes that happened in parallel without explanation. see jira.
2018-02-23 16:50:15 -06:00
zhangduo ad5cd50dfc HBASE-20048 Revert serial replication feature 2018-02-23 13:58:31 +08:00
Toshihiro Suzuki 1bc996aa50 HBASE-20049 Region replicas of SPLIT and MERGED regions are kept in in-memory states until restarting master
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-02-22 20:06:21 -08:00
Apekshit Sharma 51f7b75f1f HBASE-19401 Add missing security checks in RSRpcServices 2018-02-22 16:09:53 -08:00
tedyu d68f697f39 HBASE-20052 TestRegionOpen#testNonExistentRegionReplica fails due to NPE 2018-02-22 12:35:12 -08:00
Umesh Agashe 8afa49f5d0 HBASE-19767 Fix for Master web UI shows negative values for Remaining KVs
Negative Remaining KVs and progress percent greater than 100 is because CompactionProgress#totalCompactingKVs is sometimes less than CompactionProgress#currentCompactedKVs.
Changes add a getter to CompactionProgress#totalCompactingKVs and from inside getter warning is logged. currentCompactedKVs are return when totalCompactingKVs are less than current.

Signed-off-by: Michael Stack <stack@apache.org>
2018-02-22 10:10:21 -08:00
Michael Stack 3434e99e6c HBASE-20044 TestClientClusterStatus is flakey"
Revert "Revert "HBASE-2004 TestClientClusterStatus is flakey""
This is a revert of a revert, i.e. a reapplication, just so I can fix
the JIRA number.

This reverts commit 6796b8e21f.
2018-02-22 09:44:04 -08:00
Michael Stack 3d2e9e2125 Revert "HBASE-2004 TestClientClusterStatus is flakey"
Revert to fix JIRA number; should be 20044.

This reverts commit 92bb4db9ef.
2018-02-22 09:44:04 -08:00
Michael Stack 11af33af2a HBASE-19391 Calling HRegion#initializeRegionInternals from a region replica can still re-create a region directory; ADDEDNDUM to fix TestRegionOpen failure 2018-02-22 09:15:16 -08:00
Josh Elser 4cf846d085 HBASE-20035 Stabilize the flaky TestQuotaStatusRPCs
The test will fail if the quota moves to violation before
the second half of the test.

Signed-off-by: Michael Stack <stack@apache.org>
2018-02-22 09:40:20 -05:00
Michael Stack 2440f807bf Revert "HBASE-19767 Fix for Master web UI shows negative values for Remaining KVs"
Applied prematurely.

This reverts commit 61b55166bf.
2018-02-21 18:02:25 -08:00
zhangduo b328807d25 HBASE-20038 TestLockProcedure.testTimeout is flakey 2018-02-21 17:24:19 -08:00
Esteban Gutierrez a0900857c7 HBASE-19391 Calling HRegion#initializeRegionInternals from a region replica can still re-create a region directory 2018-02-21 15:56:36 -08:00
Michael Stack 13223c217c HBASE-20042 TestRegionServerAbort flakey; ADDENDUM, RETRY 2018-02-21 15:26:21 -08:00
Umesh Agashe 61b55166bf HBASE-19767 Fix for Master web UI shows negative values for Remaining KVs
Negative Remaining KVs and progress percent greater than 100 is because CompactionProgress#totalCompactingKVs is sometimes less than CompactionProgress#currentCompactedKVs.
Changes add a getter to CompactionProgress#totalCompactingKVs and from inside getter warning is logged. currentCompactedKVs are return when totalCompactingKVs are less than current.
2018-02-21 15:14:24 -08:00
Michael Stack 3a3994223c HBASE-2004 TestClientClusterStatus is flakey 2018-02-21 14:53:31 -08:00
Michael Stack 3f82098d4b HBASE-20042 TestRegionServerAbort flakey 2018-02-21 13:26:10 -08:00
Andrew Purtell 173a5bf1f1 HBASE-20027 Add test TestClusterPortAssignment
LocalHBaseCluster forces random port assignment for sake of concurrent unit test
execution friendliness, but we still need a positive test for RPC and info port
assignment.
2018-02-21 13:12:30 -08:00
tedyu bf5f034463 HBASE-19166 AsyncProtobufLogWriter persists ProtobufLogWriter as class name for backward compatibility 2018-02-21 13:04:59 -08:00
Mike Drob 5d994a24fc HBASE-20039 MR tests out to hbase-mapreduce mobile 2018-02-21 14:54:30 -06:00
Josh Elser d9b8dcc1d3 HBASE-19953 Ensure post DDL hooks are only called after successful operations
The 1.x functionality of Master DDL operations is that "post" observer hooks
are only invoked when the DDL action was successful. With the async-ness of
ProcV2, we find ourselves in a case where the post-hook may be invoked before
the Procedure runs and fails. We need to introduce some blocking to wait and
see if the Procedure is going to fail on a precondition before invoking the hook.

Signed-off-by: Michael Stack <stack@apache.org>
2018-02-21 14:02:49 -05:00
zhangduo a27ef55a40
HBASE-20037 Race when calling SequenceIdAccounting.resetHighest 2018-02-21 10:05:02 -08:00
anastas 92d04d5751 HBASE-19506: The CellChunkMap index chunks are usually small, so in order to prevent memory underutilization, HBASE-19506 presents small chunks preallocated in a small pool 2018-02-21 10:12:25 +02:00
Chia-Ping Tsai 79d9403a79 HBASE-20017 BufferedMutatorImpl submit the same mutation repeatedly
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-02-20 16:59:48 -08:00
Ted Yu b75a8f4047 HBASE-19954 Separate TestBlockReorder into individual tests to avoid ShutdownHook suppression error against hadoop3 2018-02-20 14:56:20 -08:00
Apekshit Sharma 6b84393661 HBASE-19400 Add missing security checks in MasterRpcServices
- Added ADMIN permission check for following rpc calls:
  normalize, setNormalizerRunning, runCatalogScan, enableCatalogJanitor, runCleanerChore,
  setCleanerChoreRunning, execMasterService, execProcedure, execProcedureWithRet
- Moved authorizationEnabled check to start of AccessChecker's functions. Currently, and IDK why,
  we call authManager.authorize() first and then discard its result if authorizationEnabled is false. Weird.
2018-02-20 13:37:20 -07:00
Michael Stack 148356a7bf HBASE-20029 @Ignore TestQuotaThrottle and TestReplicasClient#testCancelOfMultiGet 2018-02-20 12:09:47 -08:00
Michael Stack 51cea3e2c3 HBASE-20024 TestMergeTableRegionsProcedure is STILL flakey 2018-02-20 11:08:27 -08:00
zhangduo 69d2becc73 HBASE-20021 TestFromClientSideWithCoprocessor is flakey 2018-02-20 06:24:42 -08:00
zhangduo b7685307e4 HBASE-20020 Make sure we throw DoNotRetryIOException when ConnectionImplementation is closed 2018-02-20 06:12:13 -08:00
zhangduo 391790ddb0 HBASE-19978 The keepalive logic is incomplete in ProcedureExecutor 2018-02-19 17:13:47 -08:00
Reid Chan a9a6eed372 HBASE-19950 Introduce a ColumnValueFilter
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2018-02-20 04:56:13 +08:00
eshcar f3bb9b9613 HBASE-18294 Reduce global heap pressure: flush based on heap occupancy 2018-02-18 09:55:44 +02:00
Michael Stack f3ff55a2b4 HBASE-20015 TestMergeTableRegionsProcedure and TestRegionMergeTransactionOnCluster flakey 2018-02-17 11:38:26 -08:00