Commit Graph

7809 Commits

Author SHA1 Message Date
Bharath Vissapragada 69e3e0e2ef HBASE-23647: Make MasterRegistry the default impl. (#1039)
Signed-off-by: Stack <stack@apache.org>
Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
(cherry picked from commit 229b8aaaf3)
2020-02-27 10:33:42 -08:00
Bharath Vissapragada be30d43a6c HBASE-23305: Master based registry implementation (#954)
Implements a master based registry for clients.

 - Supports hedged RPCs (fan out configured via configs).
 - Parameterized existing client tests to run with multiple registry combinations.
 - Added unit-test coverage for the new registry implementation.

Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
Signed-off-by: stack <stack@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
(cherry picked from commit 62da419b23)
2020-02-27 10:33:42 -08:00
Bharath Vissapragada c650f28ab4 HBASE-23604: Clarify AsyncRegistry usage in the code. (#957)
* HBASE-23604: Cleanup AsyncRegistry interface

- Cleans up the method names to make more sense and adds a little
more javadocs for context. In future patches we can revisit
the name of the actual class to make it more self explanatory.

- Does AsyncRegistry -> ConnectionRegistry rename.
"async" ness of the registry is kind of implicit based on
the interface contents and need not be reflected in the name.

Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
Signed-off-by: stack <stack@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
(cherry picked from commit 12bb41eb2c)
2020-02-27 10:33:42 -08:00
Bharath Vissapragada 488460e840 HBASE-23304: RPCs needed for client meta information lookup (#904)
* HBASE-23304: RPCs needed for client meta information lookup

This patch implements the RPCs needed for the meta information
lookup during connection init. New tests added to cover the RPC
code paths. HBASE-23305 builds on this to implement the client
side logic.

Fixed a bunch of checkstyle nits around the places the patch
touches.

Signed-off-by: Andrew Purtell <apurtell@apache.org>
(cherry picked from commit 4f8fbba0c0)
2020-02-27 10:33:42 -08:00
Bharath Vissapragada 89581d9d21 HBASE-23281: Track meta region locations in masters (#830)
* HBASE-23281: Track meta region changes on masters

This patch adds a simple cache that tracks the meta region replica
locations. It keeps an eye on the region movements so that the
cached locations are not stale.

This information is used for servicing client RPCs for connections
that use master based registry (HBASE-18095). The RPC end points
will be added in a separate patch.

Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
(cherry picked from commit 8571d389cf)
2020-02-27 10:33:42 -08:00
Bharath Vissapragada 742949165f HBASE-23275: Track active master's address in ActiveMasterManager (#812)
Currently we just track whether an active master exists.
It helps to also track the address of the active master in
all the masters to help serve the client RPC requests to
know which master is active.

Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
(cherry picked from commit efebb843af)
2020-02-27 10:33:42 -08:00
Bharath Vissapragada 9ab652982b HBASE-23257: Track clusterID in stand by masters (#798)
This patch implements a simple cache that all the masters
can lookup to serve cluster ID to clients. Active HMaster
is still responsible for creating it but all the masters
will read it from fs to serve clients.

RPCs exposing it will come in a separate patch as a part of
HBASE-18095.

Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
Signed-off-by: Guangxu Cheng <guangxucheng@gmail.com>
(cherry picked from commit c2e01f2398)
2020-02-27 10:33:42 -08:00
Pankaj 8b7cdc9781 HBASE-23740 Invalid StoreFile WARN log message printed for recovered.… (#1198)
* HBASE-23740 Invalid StoreFile WARN log message printed for recovered.hfiles directory

* HBASE-23740 Invalid StoreFile WARN log message printed for recovered.hfiles directory

(cherry picked from commit 3c3aae9a2f)
2020-02-26 20:36:06 +05:30
Guanghao Zhang 614ab028d4
HBASE-23864 No need to submit SplitTableRegionProcedure/MergeTableRegionsProcedure when split/merge is disabled (#1185)
Signed-off-by: binlijin <binlijin@gmail.com>
Signed-off-by: stack <stack@apache.org>
2020-02-22 17:56:23 +08:00
stack ff38d6969a Revert "HBASE-23880 [Flakey Test] TestRegionReplicaFailover fails frequently"
This reverts commit d5140d4b31.

Reverted because does not 'fix' the issue.
2020-02-21 09:39:19 -08:00
stack d5140d4b31 HBASE-23880 [Flakey Test] TestRegionReplicaFailover fails frequently
Purge start of RS at end of test, refactor so not using deprecated
APIs, cut down on work done.
2020-02-20 22:14:10 -08:00
stack 553eb97b7b Revert "HBASE-23864 No need to submit SplitTableRegionProcedure/MergeTableRegionsProcedure when split/merge is disabled (#1182)"
Causes TestSplitOrMergeStatus to fail. Reverting.

This reverts commit 5e06a2ee7f.
2020-02-19 21:12:34 -08:00
stack 4509b214eb HBASE-23877 [Flakey Test] TestStochasticLoadBalancerRegionReplicaHighReplication "Two or more region replicas are hosted on the same host after balance" 2020-02-19 16:10:04 -08:00
Guanghao Zhang 5e06a2ee7f HBASE-23864 No need to submit SplitTableRegionProcedure/MergeTableRegionsProcedure when split/merge is disabled (#1182)
Signed-off-by: binlijin <binlijin@gmail.com>
2020-02-19 21:23:36 +08:00
stack 085d0e5fb6 HBASE-23867 [Flakey Test] TestStochasticLoadBalancerRegionReplicaSameHosts#testRegionReplicationOnMidClusterSameHosts 2020-02-18 22:39:45 -08:00
stack 390a6015d8 HBASE-23866 More test classifications
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAsyncMetaRegionLocator.java
 Add wait on no region in transition in setup before proceeding.

hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAsyncResultScannerCursor.java
 Make test large. Takes longer than 50seconds.

hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAsyncTableRSCrashPublish.java
 Make large because it fails when networking is weird... when VPN or
 something is up. See HBASE-23850. When large, doesn't get run
 when you do mvn test.

hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAsyncTableScanAll.java
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestScannersFromClientSide2.java
hbase-server/src/test/java/org/apache/hadoop/hbase/filter/TestMultiRowRangeFilter.java
hbase-server/src/test/java/org/apache/hadoop/hbase/master/balancer/TestStochasticLoadBalancerRegionReplica.java
 Make it large. Takes too long.

hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestSeparateClientZKCluster.java
 Use data dir instead of /tmp.

M hbase-server/src/test/java/org/apache/hadoop/hbase/http/TestInfoServersACL.java
 Wait till mbean is up before proceeding w/ test.

hbase-server/src/test/java/org/apache/hadoop/hbase/security/token/SecureTestCluster.java
 Test for null CLUSTER in tearDown.
2020-02-18 21:03:15 -08:00
stack 92411ad3dd HBASE-23853 [Flakey Test] TestBlockEvictionFromClient#testBlockRefCountAfterSplits
ADDENDUM MORE: Add logging of all blocks in cache
2020-02-17 20:44:24 -08:00
GeorryHuang 3895919e10 HBASE-23859 Modify "Block locality" of RegionServer Web UI to human readable percentage (#1176)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2020-02-18 10:09:01 +08:00
stack 9f752dabd4 HBASE-23863 [Flakey Test] TestReplicationEndpointWithMultipleWAL#testInterClusterReplication Debug 2020-02-17 13:17:49 -08:00
stack f20e07b72b HBASE-23853 [Flakey Test] TestBlockEvictionFromClient#testBlockRefCountAfterSplits
ADDENDUM: make set evict on close volatile
2020-02-17 08:32:39 -08:00
GeorryHuang 73555180eb HBASE-23855: Change bytes size to human readable size for Server Metrics of RegionServer Web UI (#1175)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2020-02-17 09:17:01 +08:00
stack a6743c2e5a HBASE-23853 [Flakey Test] TestBlockEvictionFromClient#testBlockRefCountAfterSplits
ADDENDUM: More debug/force compaction
2020-02-16 15:15:34 -08:00
stack 5a3e04a9a2 HBASE-23853 [Flakey Test] TestBlockEvictionFromClient#testBlockRefCountAfterSplits 2020-02-15 14:38:38 -08:00
Nick Dimiduk 0011d96371 HBASE-23808 [Flakey Test] TestMasterShutdown#testMasterShutdownBefore… (#1141)
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
Signed-off-by: stack <stack@apache.org>
2020-02-14 08:40:20 -08:00
stack 5d77ff6bb6 HBASE-23838 Adding debug logging to a few ExportSnapshot tests
* hbase-mapreduce/src/main/java/org/apache/hadoop/hbase/snapshot/ExportSnapshot.java
 Add logging of temp output dir and if tmp dir is being used at all.

* hbase-mapreduce/src/test/java/org/apache/hadoop/hbase/snapshot/TestExportSnapshot.java
 Don't create new Configurations. Use current. Set it into the launched
 ExportSnapshot too. Log as we make progress through stages so easier to
 find location of exception source.

* hbase-mapreduce/src/test/java/org/apache/hadoop/hbase/snapshot/TestExportSnapshotV1NoCluster.java
 Add makeQualified though looks to be redundant.

* hbase-server/src/test/java/org/apache/hadoop/hbase/http/TestInfoServersACL.java
 Might fix a local fail where hbase doesn't seem to be up when we query
 jmx. Wait on meta being online.

M hbase-server/src/test/java/org/apache/hadoop/hbase/master/assignment/TestRegionStateStore.java
 Run all on the one cluster instance. See if helps w/ odd failure when
 run locally.
2020-02-13 13:38:42 -08:00
meiyi 50eaa0293e HBASE-23824 TestSnapshotScannerHDFSAclController is flakey (#1157)
Signed-off-by: stack <stack@apache.org>
2020-02-10 09:42:42 -08:00
stack a814616a7d HBASE-23815 [Flakey Test] AbstractTestAsyncTableRegionReplicasRead family of tests fails with no breadcrumbs on why 2020-02-10 09:00:41 -08:00
stack d572ef2d19 HBASE-23814 Add null checks and logging to misc set of tests
Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
Signed-off-by: Zach York <zyork@apache.org>

* TestFullLogReconstruction log the server we've chosen to expire and then note where we starting counting rows
* TestAsyncTableScanException use a define for row counts
* TestRawAsyncTableLimitedScanWithFilter check connection was made before closing it in tearDown
* TestLogsCleaner use single mod time. Make it for sure less than now in case test runs all in the same millisecond (would cause test fail)
* TestReplicationBase test table is non-null before closing in tearDown
2020-02-10 08:46:15 -08:00
GeorryHuang c9379c7104 HBASE-23822:Fix typo in procedures.jsp (#1155)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2020-02-10 09:55:06 +08:00
Bharath Vissapragada 40c37ddf19
HBASE-23682 Fix NPE when disable DeadServerMetricRegionChore (#1026) (#1151)
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
(cherry picked from commit 24823ecfc9)
2020-02-08 21:18:05 -08:00
stack 29fb52b5d2 HBASE-23812 [Flakey Test] TestReplicator#testReplicatorWithErrors: AssertionError: We did not replicate enough rows expected:<10> but was:<7> 2020-02-07 14:27:45 -08:00
Nick Dimiduk c2977a5100
HBASE-23802 Remove unnecessary Configuration instantiation in LossyAccounting (#1127) (#1136)
Signed-off-by: stack <stack@apache.org>
2020-02-06 11:56:45 -08:00
stack 09e8aff79c HBASE-23805 [Flakey Test] TestRaceBetweenSCPAndDTP 2020-02-05 22:01:19 -08:00
stack 3bf9138b09 HBASE-23789 [Flakey Tests] ERROR [Time-limited test] balancer.HeterogeneousRegionCountCostFunction(199): cannot read rules file located at ' /tmp/hbase-balancer.rules '; ADDENDUM
Missed adding these files.
2020-02-04 16:39:33 -08:00
Nick Dimiduk bb8d9df5b1
Revert "HBASE-23304: RPCs needed for client meta information lookup (apache#904) (#1098)"
This reverts commit 71f035450d.
2020-02-04 16:31:24 -08:00
Mark Robert Miller e385fd97e0 HBASE-23783: Address tests writing and reading SSL/Security files in a common location. (#1116)
This is causing me issues with parallel test runs.

Also allow setting the surefire reports and temp directories via command line.

Signed-off-by: stack <stack@apache.org>
2020-02-04 14:40:52 -08:00
Duo Zhang 36824bb504 HBASE-23782 Addendum fix error prone warning 2020-02-04 10:36:12 +08:00
stack 86bb0980bf HBASE-23786 [Flakey Test] TestMasterNotCarryTable.testMasterMemStoreLAB 2020-02-03 17:30:24 -08:00
Michael Stack 12f4e0977c
HBASE-23780 Edit of test classifications (#1109)
These classifications come of running at various fork counts.. A test
may complete quick if low fork count but if it is accessing disk, it
will run much slower if fork count is high. This edit accommodates
some of this phenomenon.


Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
Signed-off-by: Jan Hentschel <janh@apache.org>
2020-02-03 09:16:47 -08:00
Duo Zhang f94dbebffa HBASE-23782 We still reference the hard coded meta descriptor in some places when listing table descriptors (#1115)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2020-02-03 14:32:29 +08:00
Bharath Vissapragada 4de06915b8 HBASE-23764: Switch to IP address for ZK ensemble #1106
Tests showed that using IP address is much faster for mini cluster
and a lot less flakier. See the jira for more details.
2020-02-01 15:13:54 -08:00
abhinaba.sarkar bf924ccdaa HBASE-23350 Make compaction files cacheonWrite configurable based on threshold
Signed-off-by: ramkrish86 <ramkrishna@apache.org>
2020-01-31 11:42:45 +05:30
stack 76247aa21f HBASE-23771 [Flakey Tests] Test TestSplitTransactionOnCluster Again 2020-01-29 22:36:13 -08:00
stack 860b93dc69 HBASE-23770 [Flakey Tests] TestRegionReplicasWithRestartScenarios#testWhenRestart 2020-01-29 22:14:16 -08:00
Josh Elser 5fc1141f63 HBASE-17115 Define UI admins via an ACL
The Hadoop AccessControlList allows us to specify admins of the webUI
via a list of users and/or groups. Admins of the WebUI can mutate the
system, potentially seeing sensitive data or modifying the system.

hbase.security.authentication.spnego.admin.users is a comma-separated
list of users who are admins.
hbase.security.authentication.spnego.admin.groups is a comma-separated
list of groups whose membership are admins. Either of these
configuration properties may also contain an asterisk (*) which denotes
"any entity" (e.g user, group).

Previously, when a user was denied from some endpoint that was
designated for admins, they received an HTTP/401. In this case, it is
more correct to return HTTP/403 as they were correctly authenticated,
but they were disallowed from fetching the given resource. This commit
incorporates this change.

hbase.security.authentication.ui.config.protected also exists for users
who have sensitive information stored in the Hadoop service
configuration and want to limit access to this endpoint. By default,
the Hadoop configuration endpoint is not protected and any
authenticated user can access it.

The test is based off of work by Nihal Jain in HBASE-20472.

Co-authored-by: Nihal Jain <nihaljain.cs@gmail.com>
Signed-off-by: Sean Busbey <busbey@apache.org>
2020-01-29 16:45:25 -05:00
Viraj Jasani 0a2aa37343
HBASE-23749 : TestHFileWriterV3 for all DataBlock Encoders
Signed-off-by: ramkrish86 <ramkrishna@apache.org>
2020-01-30 00:01:12 +05:30
stack 97e82184a1 HBASE-23753 Update of errorprone generated failures
hbase-client/src/main/java/org/apache/hadoop/hbase/HRegionInfo.java
hbase-server/src/main/java/org/apache/hadoop/hbase/executor/EventHandler.java
 Complains about mismatch in types when Compare. Implement Compare in
 base Interface.

hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java
 Complains pbs never return null.

hbase-server/src/test/java/org/apache/hadoop/hbase/replication/regionserver/TestReplicationSinkManager.java
 Needed redo because errorprone complains can't mock Service from guava.

hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionReplicasWithRestartScenarios.java
hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestSnapshotScannerHDFSAclController.java
 Unrelated...adding one-liner debug statements chasing other test
 failures.
2020-01-28 17:01:30 -08:00
Bharath Vissapragada 71f035450d
HBASE-23304: RPCs needed for client meta information lookup (apache#904) (#1098)
* HBASE-23257: Track clusterID in stand by masters (#798)

This patch implements a simple cache that all the masters
can lookup to serve cluster ID to clients. Active HMaster
is still responsible for creating it but all the masters
will read it from fs to serve clients.

RPCs exposing it will come in a separate patch as a part of
HBASE-18095.

Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
Signed-off-by: Guangxu Cheng <guangxucheng@gmail.com>
(cherry picked from commit c2e01f2398)

* HBASE-23275: Track active master's address in ActiveMasterManager (#812)

Currently we just track whether an active master exists.
It helps to also track the address of the active master in
all the masters to help serve the client RPC requests to
know which master is active.

Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
(cherry picked from commit efebb843af)

* HBASE-23281: Track meta region locations in masters (#830)

* HBASE-23281: Track meta region changes on masters

This patch adds a simple cache that tracks the meta region replica
locations. It keeps an eye on the region movements so that the
cached locations are not stale.

This information is used for servicing client RPCs for connections
that use master based registry (HBASE-18095). The RPC end points
will be added in a separate patch.

Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
(cherry picked from commit 8571d389cf)

* HBASE-23304: RPCs needed for client meta information lookup (#904)

* HBASE-23304: RPCs needed for client meta information lookup

This patch implements the RPCs needed for the meta information
lookup during connection init. New tests added to cover the RPC
code paths. HBASE-23305 builds on this to implement the client
side logic.

Fixed a bunch of checkstyle nits around the places the patch
touches.

Signed-off-by: Andrew Purtell <apurtell@apache.org>
(cherry picked from commit 4f8fbba0c0)
2020-01-28 16:45:49 -08:00
stack 2d5dfebb85 HBASE-23746 [Flakey Tests] Caused by: org.apache.hadoop.hbase.util.CommonFSUtils$StreamLacksCapabilityException: hflush and hsync; ADDENDUM add a few more tests 2020-01-27 17:42:08 -08:00
stack e0f913323e HBASE-23746 [Flakey Tests] Caused by: org.apache.hadoop.hbase.util.CommonFSUtils$StreamLacksCapabilityException: hflush and hsync 2020-01-27 12:05:01 -08:00
stack 62875a229a Revert "Revert "HBASE-23705 Add CellComparator to HFileContext (#1062)""
Revert of a revert, i.e., putting this patch back.

This reverts commit f4b0ad9f6a.
2020-01-27 07:40:56 -08:00
stack f4b0ad9f6a Revert "HBASE-23705 Add CellComparator to HFileContext (#1062)"
This reverts commit f817293fb4.
2020-01-26 20:49:03 -08:00
stack df033067fe HBASE-23737 [Flakey Tests] TestFavoredNodeTableImport fails 30% of the time; AMENDMENT
This is actual fix; previous added debug to test.
2020-01-25 17:01:33 -08:00
stack 9cf57a7db6 HBASE-23737 [Flakey Tests] TestFavoredNodeTableImport fails 30% of the time 2020-01-24 17:56:42 -08:00
stack 134242720d HBASE-23735 [Flakey Tests] TestClusterRestartFailover & TestClusterRestartFailoverSplitWithoutZk 2020-01-24 12:29:48 -08:00
Wei-Chiu Chuang ee64aa044d HBASE-23728 Include HBASE-21018 in 2.2 & 2.3
HBASE-21018 - RS crashed because AsyncFS was unable to update HDFS data encryption key

Signed-off-by: Peter Somogyi <psomogyi@apache.org>
Signed-off-by: Sakthi <sakthi@apache.org>
(cherry picked from commit 656cba9fe7)
2020-01-24 11:28:30 -08:00
Michael Stack 81cb4ddea5 HBASE-21345 [hbck2] Allow version check to proceed even though master is 'initializing'.
Just remove the check state from the getClusterStatus call.

Signed-off-by: Michael Stack <stack@apache.org>
Signed-off-by: Peter Somogyi <psomogyi@apache.org>
Signed-off-by: Sakthi <sakthi@apache.org>
(cherry picked from commit dd8496a546)
2020-01-24 10:43:53 -08:00
stack cfe569cf6b HBASE-23733 [Flakey Tests] TestSplitTransactionOnCluster 2020-01-24 10:06:39 -08:00
Geoffrey Jacoby a32bd14b27
HBASE-23710 - Priority configuration for system coprocessors (#1077)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2020-01-23 16:47:16 -08:00
Michael Stack f817293fb4 HBASE-23705 Add CellComparator to HFileContext (#1062)
Codecs don't have access to what CellComparator to use.  Backfill.

M hbase-common/src/main/java/org/apache/hadoop/hbase/CellComparator.java
 Adds a new compareRows with default implementation that takes a ByteBuffer.
 Needed by the index in a block encoder implementation.

M hbase-common/src/main/java/org/apache/hadoop/hbase/CellComparatorImpl.java
 Adds implementation for meta of new compareRows method. Adds utility
 method for figuring comparator based off tablename.

M hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/AbstractDataBlockEncoder.java
M hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.java
M hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/RowIndexCodecV1.java
M hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/RowIndexSeekerV1.java
 Comparator is in context. Remove redundant handling.

M hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/DataBlockEncoder.java
 Comparator is in context. Remove redundant handling. Clean javadoc.

M hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/HFileBlockDecodingContext.java
 Clean javadoc.

M hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/RowIndexEncoderV1.java
 Cache context so can use it to get comparator to use later.

M hbase-common/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileContext.java
 Cache cellcomparator to use. Javdoc on diff between HFileContext and
 HFileInfo.
M hbase-common/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileContextBuilder.java
 Add CellComparator

M hbase-mapreduce/src/main/java/org/apache/hadoop/hbase/mapreduce/HFileOutputFormat2.java
M hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFile.java
M hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
M hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileWriterImpl.java
M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFileWriter.java
 Remove comparator caching. Get from context instead.

M hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/FixedFileTrailer.java
 Skip a reflection if we can.

M hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileInfo.java
 Javadoc. Removed unused filed.

Signed-off-by: Anoop Sam John <anoopsamjohn@apacher.org>
Signed-off-by: Ramkrishna <ramkrishna.s.vasudevan@intel.com>
Signed-off-by: Jan Hentschel <janh@apache.org>
2020-01-22 20:38:24 -08:00
Wellington Ramos Chevreuil 62e340901f
HBASE-23683 Make HBaseInterClusterReplicationEndpoint more extensible… (#1047)
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
Signed-off-by: binlijin <binlijin@gmail.com>
2020-01-22 09:19:14 +00:00
Geoffrey Jacoby 5e607a122e
HBASE-23711 - Add test for MinVersions and KeepDeletedCells TTL
Signed-off-by: stack <stack@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2020-01-22 00:26:57 -08:00
Michael Stack ac852c2b66
HBASE-23055 Alter hbase:meta (#1043)
Make hbase:meta region schema dynamic.

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

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

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

M hbase-server/src/main/java/org/apache/hadoop/hbase/util/FSTableDescriptors.java
 Get hbase:meta schema from filesystem rather than from hard-coding.
2020-01-21 13:17:27 -08:00
Peter Somogyi ac5ac1dcb3 HBASE-23347 Allow custom authentication methods for RPCs; addendum (#1060)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2020-01-21 18:48:04 +01:00
Duo Zhang 70c69ba765 HBASE-23680 RegionProcedureStore missing cleaning of hfile archive (#1022)
Signed-off-by: stack <stack@apache.org>
2020-01-18 20:52:29 +08:00
Peter Somogyi d9b5b9f3fc HBASE-23653 Expose content of meta table in web ui; addendum (#1061)
Fix error prone problem

Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
Signed-off-by: stack <stack@apache.org>
2020-01-18 09:34:12 +01:00
Viraj Jasani 193a9c2e55
HBASE-23569 : Validate that all default chores of HRegionServer are scheduled (ADDENDUM)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2020-01-16 23:07:51 -08:00
Nick Dimiduk 74bfe023e5
HBASE-23653 Expose content of meta table in web ui (#1021)
Adds a display of the content of 'hbase:meta' to the Master's
table.jsp, when that table is selected. Supports basic pagination,
filtering, &c.

Signed-off-by: stack <stack@apache.org>
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
2020-01-16 08:47:00 -08:00
Josh Elser bef1eb33f4 HBASE-23347 Allow custom authentication methods for RPCs
Decouple the HBase internals such that someone can implement
their own SASL-based authentication mechanism and plug it into
HBase RegionServers/Masters.

Comes with a design doc in dev-support/design-docs and an example in
hbase-examples known as "Shade" which uses a flat-password file
for authenticating users.

Closes #884

Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Reid Chan <reidchan@apache.org>
2020-01-16 11:04:08 -05:00
Duo Zhang 68d3c201dd HBASE-23652 Move the unsupported procedure type check before migrating to RegionProcedureStore (#1018)
Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
2020-01-16 23:01:58 +08:00
WenFeiYi 9f9fa0d412 HBASE-23677 fix 500/NPE of region.jsp (#1033)
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
(cherry picked from commit d60ce17c17)
2020-01-16 14:00:32 +00:00
Wellington Chevreuil bd4eba2b53 Revert "fix 500/NPE of region.jsp (#1033)"
This reverts commit ae95b1f215.
(reverting as commit message lacks jira id. Will rea-apply soon with the jira id)
2020-01-16 13:59:05 +00:00
Wellington Ramos Chevreuil 8b5f467716 HBASE-23694 After RegionProcedureStore completes migration of WALProcedureStore, still running WALProcedureStore.syncThread keeps trying to delete now inexistent log files. (#1048)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2020-01-16 14:13:53 +08:00
Bharath Vissapragada 31b4fbdee5 HBASE-23665: Split unit tests from TestTableName into a separate test-only class. (#1032)
Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
2020-01-15 13:56:51 -08:00
dingbaosheng 9a708a3fd9 HBASE-23674 Too many rit page Numbers show confusion 2020-01-15 13:53:50 -08:00
BukrosSzabolcs 9621bafab6 HBASE-23601 OutputSink.WriterThread exception gets stuck and repeated indefinietly (#1028) 2020-01-15 12:59:58 -08:00
WenFeiYi ae95b1f215 fix 500/NPE of region.jsp (#1033)
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
(cherry picked from commit d60ce17c17)
2020-01-15 11:38:16 +00:00
Viraj Jasani 3800f6f131
HBASE-23569 : Validate that all default chores of HMaster are scheduled
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2020-01-14 23:07:17 -08:00
Michael Stack 602f6dd693
HBASE-23687 DEBUG logging cleanup (#1040)
Signed-off-by: Jan Hentschel <janh@apache.org>
2020-01-14 22:07:23 -08:00
Nick Dimiduk 4a35e2f837
HBASE-23383 [hbck2] `fixHoles` should queue assignment procedures for any regions its fixing (#917) (#1037)
The current process for an operator, after fixing holes in meta, is to
manually disable and enable the whole table. Let's try to avoid
bringing the whole table offline if we can. Have the master attempt to
queue up assignment procedures for any new regions it creates.

Signed-off-by: stack <stack@apache.org>
2020-01-14 09:00:29 -08:00
Josh Elser 4bf7fb8613 HBASE-23679 FileSystem objects leak when cleaned up in cleanupBulkLoad
The cleanupBulkLoad method is only called for the first Region in the
table which was being bulk loaded into. This means that potentially N-1
other RegionServers (where N is the number of RegionServers) will leak
one FileSystem object into the FileSystem cache which will never be
cleaned up. We need to do this clean-up as a part of secureBulkLoadHFiles
otherwise we cannot guarantee that heap usage won't grow unbounded.

Closes #1029

Signed-off-by: Sean Busbey <busbey@apache.org>
2020-01-13 18:42:31 -05:00
Duo Zhang caaaf0810e HBASE-23681 Add UT for procedure store region flusher (#1024)
Signed-off-by: stack <stack@apache.org>
2020-01-12 13:31:11 +08:00
stack da782e4233 Revert "HBASE-23055 Alter hbase:meta"
This reverts commit d64b0e3612.
2020-01-11 09:21:15 -08:00
stack 6bd6396c97 Revert "HBASE-23668 Master log start filling with "Flush journal status" messages"
Minor addendum fixing log message.
2020-01-10 15:57:46 -08:00
belugabehr 76a6fe6a8b HBASE-23628: Remove Apache Commons Digest Base64 (#977)
Signed-off-by: stack <stack@apache.org>
(cherry picked from commit 280b94434c)
2020-01-10 15:45:59 -06:00
stack 938dd1c2f8 HBASE-23668 Master log start filling with "Flush journal status" messages"
This reverts commit fb9fa04da7.
i.e. reapplication of patch that was preamaturely applied.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
2020-01-10 10:27:33 -08:00
Guanghao Zhang 75ca8606df HBASE-23659 BaseLoadBalancer#wouldLowerAvailability should consider region replicas (#1001)
Signed-off-by: stack <stack@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2020-01-10 15:23:13 +08:00
stack 1217d57492 Revert "HBASE-23668 Master log start filling with "Flush journal status" messages"
This reverts commit 1047246717.
Prematurely pushed
2020-01-09 15:49:29 -08:00
stack 58b0e0f3fc Revert "HBASE-23601: OutputSink.WriterThread exception gets stuck and repeated indefinietly (#956)"
This reverts commit e78ce468d8.
2020-01-09 15:23:36 -08:00
stack 1047246717 HBASE-23668 Master log start filling with "Flush journal status" messages 2020-01-09 14:08:19 -08:00
BukrosSzabolcs e78ce468d8 HBASE-23601: OutputSink.WriterThread exception gets stuck and repeated indefinietly (#956)
* HBASE-23601: OutputSink.WriterThread exception gets stuck and repeated indefinietly

clear exception after logged
try to restart writer threads if needed
2020-01-09 12:22:16 -08:00
stack d64b0e3612 HBASE-23055 Alter hbase:meta
Make it so hbase:meta can be altered. TableState for hbase:meta
    was hardcoded ENABLED. Make it dynamic. State is now kept in
    current active Master. It is transient so falls back to default
    if Master crashes. Add to registry a getMetaTableState
    which reads mirrored state from zookeeper (NOT from Master and
    defaults ENABLED if no implementation or error fetching state).
    hbase:meta schema will be bootstrapped from the filesystem.
    Changes to filesystem schema are atomic so we should be ok if
    Master fails mid-edit (TBD). Undoes a bunch of guards that
    prevented our being able to edit hbase:meta.

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

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

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

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

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

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

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

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

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

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

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

Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
2020-01-09 09:52:21 -08:00
Guanghao Zhang e750d2c7af HBASE-23658 Fix flaky TestSnapshotFromMaster (#998)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2020-01-09 17:44:53 +08:00
binlijin 1591c2025e
Backport "HBASE-23660 hbase:meta's table.jsp ref to wrong rs address" to branch-2 (#1005) 2020-01-09 17:22:34 +08:00
binlijin e242d84b97 HBASE-23651 Region balance throttling can be disabled (#991)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
Signed-off-by: Anoop Sam John <anoopsamjohn@apache.org>
2020-01-08 19:03:30 +08:00
binlijin 1415a82d41 HBASE-23636 Disable table may hang when regionserver stop or abort. (#982)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: virajjasani <34790606+virajjasani@users.noreply.github.com>
2020-01-06 15:22:58 +08:00
Viraj Jasani 27660549d1
HBASE-23588 : Cache index & bloom blocks on write (ADDENDUM)
Signed-off-by: Anoop Sam John <anoopsamjohn@apache.org>
2020-01-06 12:07:05 +05:30
stack c44a5c47dd HBASE-23369 Auto-close 'unknown' Regions reported as OPEN on RegionServers
Master force-closes unknown/incorrect Regions OPEN on RS

M hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
 Added a note and small refactor.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/CatalogJanitor.java
 Fix an NPE when CJ ran.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
 Minor clean up of log message; make it clearer.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java
 Make it so closeRegionSilentlyAndWait can be used w/o timeout.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
 If a RegionServer Report notes a Region is OPEN and the Master does not
 know of said Region, close it (We used to crash out the RegionServer)

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionStateNode.java
 Minor tweak of toString -- label should be state, not rit (confusing).

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionStates.java
 Doc.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.java
 Add region name to exception.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/HBCKServerCrashProcedure.java
 Be more careful about which Regions we queue up for reassign. This
 procedure is run by the operator so could happen at any time. We
 will likely be running this when Master has some accounting of
 cluster members so check its answers for what Regions were on
 server before running.

M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
 Doc and we were misrepresenting the case where a Region as not in RIT
 when we got CLOSE -- we were reporting it as though it was already
 trying to CLOSE.
2020-01-03 10:21:55 -08:00
Duo Zhang 26b1695df5 HBASE-23587 The FSYNC_WAL flag does not work on branch-2.x (#974)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
Signed-off-by: stack <stack@apache.org>
2020-01-03 17:01:40 +08:00
Guanghao Zhang a693a8fd95 HBASE-23286 Improve MTTR: Split WAL to HFile (#820)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2020-01-03 16:39:06 +08:00