Commit Graph

6651 Commits

Author SHA1 Message Date
Chia-Ping Tsai dd9e46bbf5 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:09:54 +08:00
Peter Somogyi 0a94c9c250 HBASE-17449 Add explicit document on different timeout settings 2018-03-22 12:45:06 +05:30
Michael Stack 2bc99e4b5e HBASE-20237 Put back getClosestRowBefore and throw UnsupportedOperation instead... for asynchbase client Throw exception if an old client connects. 2018-03-21 21:48:15 -07:00
tedyu 7a130dcc33 HBASE-20090 Properly handle Preconditions check failure in MemStoreFlusher.run 2018-03-21 09:09:50 -07:00
Andrew Purtell 4fcc1ac7f7 HBASE-19024 Provide a configurable option to hsync WAL edits to the disk for better durability (Harshal Jain) 2018-03-20 17:30:39 -07:00
Michael Stack fabb1d97cc 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:09:43 -07:00
Michael Stack 75ff2504ec HBASE-20232 [LOGGING] Formatting around close and flush 2018-03-20 10:33:07 -07:00
Michael Stack 3f1c86786c 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:07:34 -07:00
Zach York 6bf967adfb [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:54:43 -07:00
Michael Stack 79d47dd57a 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:34:15 -07:00
Michael Stack e0bdc87b27
HBASE-20190 Fix default for MIGRATE_TABLE_STATE_FROM_ZK_KEY 2018-03-15 10:34:31 -07:00
Chia-Ping Tsai 95596e8ba7 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:26:08 +08:00
Ashish Singhi 24ea9d1e48 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:55 +08:00
Michael Stack 63ce0c0733 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:43:34 -07:00
Mike Drob 5e2f8e4023 HBASE-20180 Avoid Class::newInstance 2018-03-14 12:23:38 -05:00
Apekshit Sharma ad425e8603 HBASE-20185 Fix ACL check for MasterRpcServices#execProcedure 2018-03-14 19:08:17 +05:30
Chance Li 47b227b55b 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:36:58 +08:00
Yu Li c8ecfc5461 Revert "HBASE-19389 Limit concurrency of put with dense (hundreds) columns to prevent write handler exhausted"
This reverts commit c6d89b494c.
2018-03-14 18:35:22 +08:00
Yu Li c6d89b494c 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:33:39 +08:00
Mike Grimes a9d9fa35a2 HBASE-17165 Make use of retry setting in LoadIncrementalHFiles & fix test 2018-03-13 14:59:56 -07:00
Sahil Aggarwal 3757915dac HBASE-19075: Fix the 'tasks' table on master info page to not scroll up on clicking the tab 2018-03-13 14:24:56 -07:00
Michael Stack 260ee0da60 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 05:44:43 -07:00
BELUGA BEHR 4033405b36 HBASE-19449 Minor logging change in HFileArchiver
Signed-off-by: Apekshit Sharma <appy@apache.org>
2018-03-12 22:12:27 +05:30
Umesh Agashe 842678c991 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 12:59:48 +08:00
Guangxu Cheng 1728b48c82 HBASE-20132 Change the "KV" to "Cell" for web UI
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2018-03-10 12:36:29 +08:00
Umesh Agashe 55e3dda25d 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:44:49 -08:00
Ashish Singhi cdf7be8929 HBASE-20146 Regions are stuck while opening when WAL is disabled
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-03-09 21:14:42 +08:00
zhangduo d4e0fc74d4 HBASE-20082 Fix findbugs errors only on master which are introduced by HBASE-19397 2018-03-09 20:55:48 +08:00
Guanghao Zhang 55d0d3026a HBASE-19923 Reset peer state and config when refresh replication source failed 2018-03-09 20:55:48 +08:00
zhangduo d1e775e35e HBASE-19936 Introduce a new base class for replication peer procedure 2018-03-09 20:55:48 +08:00
zhangduo abaa80f26e HBASE-19873 addendum add missing rule for new tests 2018-03-09 20:55:48 +08:00
Guanghao Zhang db4cb01a9e HBASE-19783 Change replication peer cluster key/endpoint from a not-null value to null is not allowed
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-03-09 20:55:48 +08:00
huzheng a7dce36766 HBASE-19748 TestRegionReplicaFailover and TestRegionReplicaReplicationEndpoint UT hangs 2018-03-09 20:55:48 +08:00
zhangduo 1c32241a00 HBASE-19719 Fix checkstyle issues 2018-03-09 20:55:48 +08:00
Guanghao Zhang 1e69d7fa24 HBASE-19711 TestReplicationAdmin.testConcurrentPeerOperations hangs
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-03-09 20:55:48 +08:00
zhangduo 0165455d34 HBASE-19707 Race in start and terminate of a replication source after we async start replicatione endpoint 2018-03-09 20:55:48 +08:00
Guanghao Zhang d36aacdf9e HBASE-19636 All rs should already start work with the new peer change when replication peer procedure is finished
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-03-09 20:55:48 +08:00
zhangduo 53b18fe0ac HBASE-19634 Add permission check for executeProcedures in AccessController 2018-03-09 20:55:48 +08:00
zhangduo 029406c45b HBASE-19697 Remove TestReplicationAdminUsingProcedure 2018-03-09 20:55:48 +08:00
huzheng 5655b3c0ca HBASE-19661 Replace ReplicationStateZKBase with ZKReplicationStorageBase 2018-03-09 20:55:48 +08:00
zhangduo b84fbde175 HBASE-19687 Move the logic in ReplicationZKNodeCleaner to ReplicationChecker and remove ReplicationZKNodeCleanerChore 2018-03-09 20:55:48 +08:00
Guanghao Zhang 13318dd350 HBASE-19544 Add UTs for testing concurrent modifications on replication peer
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-03-09 20:55:48 +08:00
zhangduo b0de0ec439 HBASE-19686 Use KeyLocker instead of ReentrantLock in PeerProcedureHandlerImpl 2018-03-09 20:55:48 +08:00
zhangduo 5d922a5e0c HBASE-19623 Create replication endpoint asynchronously when adding a replication source 2018-03-09 20:55:48 +08:00
zhangduo 525fef572e HBASE-19633 Clean up the replication queues in the postPeerModification stage when removing a peer 2018-03-09 20:55:48 +08:00
huzheng 1e36a84afc HBASE-19622 Reimplement ReplicationPeers with the new replication storage interface 2018-03-09 20:55:48 +08:00
zhangduo 4c6942df58 HBASE-19635 Introduce a thread at RS side to call reportProcedureDone 2018-03-09 20:55:48 +08:00
zhangduo d9b5eb3abb HBASE-19617 Remove ReplicationQueues, use ReplicationQueueStorage directly 2018-03-09 20:55:48 +08:00
zhangduo b40c426806 HBASE-19642 Fix locking for peer modification procedure 2018-03-09 20:55:48 +08:00
zhangduo ac07e07988 HBASE-19592 Add UTs to test retry on update zk failure 2018-03-09 20:55:48 +08:00