Commit Graph

6640 Commits

Author SHA1 Message Date
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