Commit Graph

1888 Commits

Author SHA1 Message Date
Chia-Ping Tsai 3f906badbe HBASE-20119 (addendum) CP_HTD_ATTR_KEY_PATTERN should be declared Private
Signed-off-by: Josh Elser <elserj@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2018-03-19 09:15:22 +08: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
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
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
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
zhangduo b7308ee01c HBASE-20117 Cleanup the unused replication barriers in meta table 2018-03-14 12:08:15 +08:00
maoling 62fc7fd3ea HBASE-20047 AuthenticationTokenIdentifier should provide a toString
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2018-03-12 22:06:08 +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
Mike Drob 641e870e11 HBASE-19987 error-prone 2.2.0 2018-03-07 13:30:51 -06: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
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
zhangduo a8471bd987 HBASE-20065 Addendum remove wrong comment 2018-02-26 09:48:41 +08:00
zhangduo ba5fb53d14 HBASE-20065 Revisit the timestamp usage in MetaTableAccessor 2018-02-25 09:13:56 +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
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
zhangduo b7685307e4 HBASE-20020 Make sure we throw DoNotRetryIOException when ConnectionImplementation is closed 2018-02-20 06:12:13 -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
Chia-Ping Tsai dad90f6cce HBASE-19680 BufferedMutatorImpl#mutate should wait the result from AP in order to throw the failed mutations 2018-02-17 07:33:58 +08:00
Mike Drob 8cf7a9d51e HBASE-19920 Lazy init for ProtobufUtil classloader 2018-02-16 09:12:15 -06:00
Chia-Ping Tsai 2f48fdbb26 HBASE-19876 The exception happening in converting pb mutation to hbase.mutation messes up the CellScanner 2018-02-13 21:08:59 +08:00
Michael Stack 67b69fb2c7 HBASE-16060 1.x clients cannot access table state talking to 2.0 cluster
This patch adds mirroring of table state out to zookeeper. HBase-1.x
clients look for table state in zookeeper, not in hbase:meta where
hbase-2.x maintains table state.

The patch also moves and refactors the 'migration' code that was put in
place by HBASE-13032.

D hbase-client/src/main/java/org/apache/hadoop/hbase/CoordinatedStateException.java
 Unused.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
 Move table state migration code from Master startup out to
TableStateManager where it belongs. Also start
MirroringTableStateManager dependent on config.

A hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/TableStateManager.java
 Move migration from zookeeper of table state in here. Also plumb in
mechanism so subclass can get a chance to look at table state as we do
the startup fixup full-table scan of meta.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
 Bug-fix. Now we create regions in CLOSED state but we fail to check
table state; were presuming table always enabled. Meant on startup
there'd be an unassigned region that never got assigned.

A hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestMirroringTableStateManager.java
 Test migration and mirroring.
2018-02-12 08:47:02 -08:00
Michael Stack 0593dda663 HBASE-19951 Cleanup the explicit timeout value for test method 2018-02-10 09:24:31 -08:00
Aman Poonia f1a81618fd HBASE-19835 Use explicit casting to avoid side effects
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-02-08 12:32:36 -08:00
Chia-Ping Tsai d8b999e695 HBASE-19900 Region-level exception destroy the result of batch 2018-02-07 08:41:56 +08:00
Umesh Agashe 6d04aa1794 HBASE-19915 (addendum): Fixed a typo because of which only daughterA was getting stored with a CLOSED state and not daughterB 2018-02-05 15:41:03 -08:00
Mike Drob 8de820786c HBASE-19922 remove ProtobufUtil::PRIMITIVES 2018-02-05 15:33:46 -06:00
Michael Stack b0e998f2a5 HBASE-19726 Failed to start HMaster due to infinite retrying on meta assign; ADDENDUM Fix failing TestMetaWithReplicas#testShutdownHandling; it was reading meta TableState 2018-02-03 21:51:50 -08:00
zhangduo 2e1ec3d3d8 HBASE-19914 Refactor TestVisibilityLabelsOnNewVersionBehaviorTable 2018-02-04 13:27:28 +08:00
Michael Stack 06dec20582
HBASE-19919 Tidying up logging 2018-02-03 08:42:02 -08:00
Umesh Agashe 811afad103
HBASE-19915 Create merged/ daughter region/s with initial state CLOSED from MetaTableAccessor#splitRegion()/ mergeRegions()
If the initial state is not set to CLOSED while creating merged/ children region/s, merged/
children region/s get stored in meta with state OFFLINE(0). If the master gets restarted after
Merge/ Split procedure stores merged/ children region/s, master startup sequence tries to assign
offline region/s. This is followed by re-assignment of merged/ children region from resumed Merge/
Split procedure.

This bug is related to HBASE-19530.

Signed-off-by: Michael Stack <stack@apache.org>
2018-02-02 18:25:20 -08:00
Chia-Ping Tsai adccbb7edf HBASE-19897 RowMutations should follow the fluent pattern 2018-02-02 05:33:08 +08:00
zhangduo 7c318cead9 HBASE-19887 Do not overwrite the surefire junit listener property in the pom of sub modules 2018-01-31 20:49:18 +08:00
zhangduo 221eb95768 HBASE-19870 Fix the NPE in ReadOnlyZKClient#run
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2018-01-29 16:28:59 +08:00
zhangduo 918599ef12 HBASE-19873 Add a CategoryBasedTimeout ClassRule for all UTs 2018-01-29 08:43:56 +08:00
Chia-Ping Tsai 541f8ad8a8 HBASE-4224 Need a flush by regionserver rather than by table option 2018-01-23 09:51:05 +08:00
Sergey Soldatov be496ba8ea HBASE-19774 incorrect behavior of locateRegionInMeta 2018-01-22 11:48:55 -08:00
Michael Stack f3c563fc00 HBASE-19837 Flakey TestRegionLoad
Add debug, change name of the rows so readable.
2018-01-21 23:24:23 -08:00
Guangxu Cheng cde1f821eb HBASE-19799 Add web UI to rsgroup
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-01-18 12:49:43 -08:00
zhangduo e546034f09 HBASE-19795 Move the tests which only need zookeeper in TestZooKeeper to hbase-zookeeper module 2018-01-15 10:57:51 +08:00
zhangduo d24fddf3ed HBASE-19772 Do not close connection to zk when there are still pending request in ReadOnlyZKClient 2018-01-14 17:08:23 +08:00
Michael Stack a4a4ce8eac
Revert "HBASE-19772 ReadOnlyZKClient improvements"
Pushed by mistake. Reverting from master.

This reverts commit 70515f5311.
2018-01-11 14:27:23 -08:00
Duo Zhang 70515f5311 HBASE-19772 ReadOnlyZKClient improvements 2018-01-11 11:37:27 -08:00
Michael Stack a7f9668c33 HBASE-19753 Miscellany of fixes for hbase-zookeeper tests to make them more robust
First, we add test resources to CLASSPATH when tests run. W/o it, there
was no logging of hbase-zookeeper test output (not sure why I have to
add this here and not over in hbase-server; research turns up nothing
so far).

M hbase-zookeeper/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKMainServer.java
 Improve fail log message.

M hbase-zookeeper/src/test/java/org/apache/hadoop/hbase/zookeeper/TestReadOnlyZKClient.java
M hbase-zookeeper/src/test/java/org/apache/hadoop/hbase/zookeeper/TestZKNodeTracker.java
 Wait until ZK is connected before progressing. On my slow zk, it could
 be a while post construction before zk connected. Using an unconnected
 zk caused test to fail.

M hbase-zookeeper/src/test/java/org/apache/hadoop/hbase/zookeeper/TestZKMainServer.java
 Change session timeout to default 30s from 1s which was way too short.

M hbase-zookeeper/src/test/resources/log4j.properties
 Set zk logs to DEBUG level in this module at least.

Adds a ZooKeeperHelper class that has utility to help interacting w/ ZK.
2018-01-11 11:23:37 -08:00
tedyu b568cf4ebd HBASE-19740 Repeated error message for NamespaceExistException 2018-01-10 18:25:45 -08:00
Josh Elser 8118d5de4e HBASE-19734 Fix IntegrationTestReplication and related impl changes
Adds (client-side) validation to ReplicationPeerConfigBuilder and javadoc
to builder methods in addition to the test fix.

Signed-off-by: Guanghao Zhang <zghao@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2018-01-10 13:52:31 -05:00
Guanghao Zhang f458b89c05 HBASE-19139 Create Async Admin methods for Clear Block Cache 2018-01-09 14:43:01 +08:00