Commit Graph

1501 Commits

Author SHA1 Message Date
Jingcheng Du 5a8f1e8aaa HBASE-17690 Clean up MOB code 2017-02-28 09:57:34 +08:00
Jan Hentschel 84a9eb3f5c HBASE-17634 Cleaned up the usage of Result.isPartial
Signed-off-by: zhangduo <zhangduo@apache.org>
2017-02-27 20:44:35 +08:00
Apekshit Sharma f444b3b542 HBASE-17312 Use 'default' keyword in coprocessor Observer interfaces to get rid of 'Base...Observer' implementations. Some javadoc improvements too.
Reason for refactor:
In cases where one might need to use multiple observers, say region, master and regionserver; and the fact that only one class can be extended, it gives rise to following pattern:

public class BaseMasterAndRegionObserver
  extends BaseRegionObserver
  implements MasterObserver

class AccessController
  extends BaseMasterAndRegionObserver
  implements RegionServerObserver

were BaseMasterAndRegionObserver is full copy of BaseMasterObserver.

There is an example of simple case too where the current design fails.
Say only one observer is needed by the coprocessor, but the design doesn't permit extending even that single observer (see RSGroupAdminEndpoint), that leads to copy of full Bas
e...Observer class into coprocessor class leading to 1000s of lines of code and this ugly mix of 5 main functions with 100 useless functions.

Javadocs changes:
- Adds class comments on 'default' methods and expectations.
- Adds explanaiton of Exception handling in Observers' class comment. Removes redundant @throws before each function.
- Improves javadocs for a bunch of functions
- deletes empty @params in a bunch of places

Change-Id: I265738d47e8554e7b4678e88bb916a0cc7d00ab3
2017-02-25 02:49:01 -08:00
zhangduo 62de29e6f2 HBASE-16991 Make the initialization of AsyncConnection asynchronous 2017-02-24 15:36:54 +08:00
tedyu 371f2bd907 HBASE-17460 enable_table_replication can not perform cyclic replication of a table - addendum addresses Enis' comments 2017-02-23 21:10:44 -08:00
Abhishek Singh Chouhan 0d656b1394 Amend HBASE-17069 RegionServer writes invalid META entries in some circumstances
Fix Hregioninfo being null during merge

Signed-off-by: Andrew Purtell <apurtell@apache.org>
2017-02-23 13:45:58 -08:00
zhangduo 8fb44fae35 HBASE-17595 Add partial result support for small/limited scan 2017-02-23 16:03:42 +08:00
zhangduo f037f230fd HBASE-17608 Add suspend support for RawScanResultConsumer 2017-02-22 20:32:03 +08:00
huzheng 22fa1cd3df HBASE-17472: Correct the semantic of permission grant
Signed-off-by: zhangduo <zhangduo@apache.org>
2017-02-20 20:13:43 +08:00
tedyu 0e05537dec HBASE-17460 enable_table_replication can not perform cyclic replication of a table (NITIN VERMA) 2017-02-17 17:56:53 -08:00
tedyu 3fc2889f7a HBASE-17460 enable_table_replication can not perform cyclic replication of a table - revert due to reproducible test failure 2017-02-16 20:17:17 -08:00
huzheng e129e6b65d HBASE-17619: Add async admin Impl which connect to RegionServer and implement close region methods.
Signed-off-by: zhangduo <zhangduo@apache.org>
2017-02-17 09:32:45 +08:00
zhangduo c8f3c8630b HBASE-17583 Add inclusive/exclusive support for startRow and endRow of scan for sync client 2017-02-15 10:18:41 +08:00
Michael Stack e019961150 HBASE-17624 Address late review of HBASE-6721, rsgroups feature
Addresses review comments by Sean Busbey and Appy that happened
to come in long after the commit of HBASE-6721, the original
rsgroup issue.

Also includes subsequent accommodation of Duo Zhang review.

Adds a new type to hold hostname and port. It is called
Address. It is a facade over Guava's HostAndPort. Replace
all instances of HostAndPort with Address. In particular,
those places where HostAndPort was part of the rsgroup
public API.

Fix licenses. Add audience annotations.

Cleanup and note concurrency expectation on a few core classes.
In particular, all access on RSGroupInfoManager is made
synchronized.

M hbase-client/src/main/java/org/apache/hadoop/hbase/ServerName.java
 Host the hostname and port in an instance of the new type Address.
 Add a bunch of deprecation of exotic string parses that should never
 have been public.

M hbase-rsgroup/src/main/java/org/apache/hadoop/hbase/rsgroup/RSGroupAdmin.java
 Make this an Interface rather than abstract class. Creation was a
 static internal method that only chose one type.... Let it be free
 as a true Interface instead.
2017-02-14 09:29:17 -08:00
Jan Hentschel 55c2e2d484 HBASE-9702 Changed unit tests to use method names for tables 2017-02-13 13:27:55 -08:00
tedyu d51e287877 HBASE-17460 enable_table_replication can not perform cyclic replication of a table (NITIN VERMA) 2017-02-10 14:54:05 -08:00
zhangduo 712fe69e4d HBASE-17599 Use mayHaveMoreCellsInRow instead of isPartial 2017-02-09 15:38:02 +08:00
Guanghao Zhang 9a78d00884 HBASE-17389 Convert all internal usages from ReplicationAdmin to Admin 2017-02-07 10:18:59 +08:00
zhangduo af9d359b8e HBASE-17402 TestAsyncTableScan sometimes hangs 2017-02-07 09:42:42 +08:00
Enis Soztutar 4d730244a9 HBASE-17187 DoNotRetryExceptions from coprocessors should bubble up to the application 2017-02-06 12:00:42 -08:00
Guanghao Zhang 5093a49e0b HBASE-17596 Implement add/delete/modify column family methods 2017-02-06 13:45:01 +08:00
Guanghao Zhang 26a94844f5 HBASE-17511 Implement enable/disable table methods 2017-02-05 14:18:40 +08:00
zhangduo ffa0cea2a3 HBASE-17508 Unify the implementation of small scan and regular scan for sync client 2017-02-05 08:49:39 +08:00
Josh Elser 4e77b18da2 HBASE-17592 Fix rpcTimeout typo (Attila Sasvari) 2017-02-03 16:50:19 -05:00
Huaxiang Sun 1159296541 HBASE-16981 Expand Mob Compaction Partition policy from daily to weekly, monthly
Support weekly and monthly mob compact partition policies in addition to the existing
daily partition policy.

Signed-off-by: Jingcheng Du <jingchengdu@apache.org>
2017-02-03 15:52:43 +08:00
Jerry He bc168b419d HBASE-17581 mvn clean test -PskipXXXTests does not work properly for some modules (Yi Liang) 2017-02-02 11:05:17 -08:00
Ajay Jadhav f8b1f57b05 HBASE-17280 Add mechanism to control hbase cleaner behavior
Signed-off-by: anoopsamjohn <anoopsamjohn@gmail.com>
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-02-01 22:16:01 -06:00
Sean Busbey 2c799fb70a Revert "Add mechanism to control hbase cleaner behavior"
This reverts commit ef052521cd.

Bad commit message.
2017-02-01 22:11:48 -06:00
Ajay Jadhav ef052521cd Add mechanism to control hbase cleaner behavior
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-02-01 19:33:06 -08:00
zhangduo b7fc7bf246 HBASE-17346 Add coprocessor service support 2017-01-31 15:19:33 +08:00
Michael Stack fb2c89b1b3 HBASE-16785 We are not running all tests
M TestStressWALProcedureStore.java
Disable test that now runs that fails because of difference in pb3.1.0.

Signed-off-by: Michael Stack <stack@apache.org>
2017-01-26 21:49:18 -08:00
Michael Stack 1ee8776273 HBASE-16785 We are not running all tests Do nothing patch just to get baseline of how many tests we run 2017-01-26 12:21:00 -08:00
Guanghao Zhang 8aea84d723 HBASE-17500 Implement getTable/creatTable/deleteTable/truncateTable methods 2017-01-25 11:30:11 +08:00
zhangduo 85d701892e HBASE-17045 Unify the implementation of small scan and regular scan 2017-01-25 09:53:06 +08:00
Guanghao Zhang 843ba9e545 HBASE-17443 Move listReplicated/enableTableRep/disableTableRep methods from ReplicationAdmin to Admin 2017-01-24 13:40:29 +08:00
anastas aa5d9a9ad3 HBASE-17492 Fix the compacting memstore part in hbase shell ruby script
Signed-off-by: Michael Stack <stack@apache.org>
2017-01-23 21:27:44 -08:00
Yu Li ba4a926b62 HBASE-17367 Make HTable#getBufferedMutator thread safe 2017-01-23 18:23:24 +08:00
Yu Li 07e0a30efa HBASE-17491 Remove all setters from HTable interface and introduce a TableBuilder to build Table instance 2017-01-23 13:57:01 +08:00
zhangduo 3abd13dacb HBASE-17489 ClientScanner may send a next request to a RegionScanner which has been exhausted 2017-01-22 16:39:00 +08:00
Jan Hentschel 55a1aa1e73 HBASE-10699 Set capacity on ArrayList where possible and use isEmpty instead of size() == 0
Signed-off-by: Michael Stack <stack@apache.org>
2017-01-20 22:58:20 -08:00
Guanghao Zhang 79018056f5 HBASE-17498 Implement listTables and listTableNames methods
Signed-off-by: Michael Stack <stack@apache.org>
2017-01-20 14:12:13 -08:00
Guanghao Zhang 2ee3c73f76 HBASE-17497 Add first async MetaTableAccessor impl and Implement tableExists method
Signed-off-by: Michael Stack <stack@apache.org>
2017-01-20 09:24:06 -08:00
Guanghao Zhang cb9ce2ceaf HBASE-17396 Add first async admin impl and implement balance methods 2017-01-19 10:15:12 +08:00
Michael Stack 8f1d0a2b84 HBASE-17486 Tighten the contract for batch client methods (Michael Axiak) 2017-01-18 15:16:52 -08:00
Stephen Yuan Jiang 805d39fca6 HBASE-17470 Remove merge region code from region server (Stephen Yuan Jiang) 2017-01-17 15:39:51 -08:00
tedyu faa9f735ca HBASE-17469 Properly handle empty TableName in TablePermission#readFields and #write (Manjunath Anand) 2017-01-17 09:36:59 -08:00
Allan Yang 9b38c1a33c HBASE-17475 Stack overflow in AsyncProcess if retry too much
Signed-off-by: zhangduo <zhangduo@apache.org>
2017-01-17 15:45:48 +08:00
zhangduo 4ab95ebbce HBASE-17372 Make AsyncTable thread safe 2017-01-17 14:33:28 +08:00
Michael Stack 4cb09a494c HBASE-16744 Procedure V2 - Lock procedures to allow clients to acquire
locks on tables/namespaces/regions (Matteo Bertozzi)

Incorporates review comments from
    https://reviews.apache.org/r/52589/
    https://reviews.apache.org/r/54388/

M hbase-client/src/main/java/org/apache/hadoop/hbase/client/AsyncTableBase.java
 Fix for eclipse complaint (from Duo Zhang)

M hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/Procedure.java
M hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
M hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.java
 Log formatting

M hbase-procedure/src/test/java/org/apache/hadoop/hbase/procedure2/ProcedureTestingUtility.java
 Added wait procedures utility.

A hbase-protocol-shaded/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/generated/LockServiceProtos.java
A hbase-protocol-shaded/src/main/protobuf/LockService.proto b/hbase-protocol-shaded/src/main/protobuf/LockService.proto
 Implement new locking CP overrides.

A hbase-server/src/main/java/org/apache/hadoop/hbase/client/locking/EntityLock.java
 New hbase entity lock (ns, table, or regions)

A hbase-server/src/main/java/org/apache/hadoop/hbase/client/locking/LockServiceClient.java
 Client that can use the new internal locking service.
2017-01-13 21:07:03 -08:00
tedyu cdee1a7034 HBASE-17450 TablePermission#equals throws NPE after namespace support was added (huzheng) 2017-01-13 09:37:08 -08:00
Guanghao Zhang ac3b1c9aa9 HBASE-17337 list replication peers request should be routed through master 2017-01-10 08:57:26 +08:00
Yu Li f92a14ade6 HBASE-14061 Support CF-level Storage Policy 2017-01-09 09:52:58 +08:00
tedyu b2a9be02ac HBASE-17408 Introduce per request limit by number of mutations (ChiaPing Tsai) 2017-01-06 13:07:15 -08:00
tedyu 4c98f97c31 HBASE-17431 Incorrect precheck condition in RoundRobinPool#get() - revert due to test failure 2017-01-06 12:12:49 -08:00
tedyu 6d48eb06c9 HBASE-17431 Incorrect precheck condition in RoundRobinPool#get() (Jan Hentschel) 2017-01-06 09:07:02 -08:00
Ashish Singhi 5f631b9653 HBASE-17290 Potential loss of data for replication of bulk loaded hfiles 2017-01-06 16:18:20 +05:30
Guanghao Zhang e02ae7724d HBASE-17388 Move ReplicationPeer and other replication related PB messages to the replication.proto 2017-01-06 10:01:22 +08:00
Jan Hentschel df98d8dcd7 HBASE-17410 Changed size() == 0 to isEmpty in hbase-client
Signed-off-by: Josh Elser <elserj@apache.org>
2017-01-05 11:45:18 -05:00
Jan Hentschel dba103e1b6 HBASE-17390 Added master and backup masters to online update of configuration
Signed-off-by: Jerry He <jerryjch@apache.org>
2017-01-04 22:08:05 -08:00
tedyu 63bd8be576 HBASE-17403 ClientAsyncPrefetchScanner doesn’t load any data if the MaxResultSize is too small (ChiaPing Tsai) 2017-01-04 08:21:25 -08:00
Guanghao Zhang 0e48665641 HBASE-17336 get/update replication peer config requests should be routed through master 2016-12-30 10:12:47 +08:00
Jan Hentschel 7572e96e3a HBASE-17385 Change usage documentation from bin/hbase to hbase in various tools
Signed-off-by: Enis Soztutar <enis@apache.org>
2016-12-29 15:20:43 -08:00
zhangduo 05b1d918b0 HBASE-17320 Add inclusive/exclusive support for startRow and endRow of scan 2016-12-29 09:43:31 +08:00
ChiaPing Tsai 5ffbd4a87d HBASE-17174 Addendum fix typo
Signed-off-by: zhangduo <zhangduo@apache.org>
2016-12-27 13:57:51 +08:00
tedyu e18e9a22da HBASE-17376 ClientAsyncPrefetchScanner may fail due to too many rows (ChiaPing Tsai) 2016-12-26 15:55:22 -08:00
zhangduo 8fa5b0b946 HBASE-17345 Implement batch 2016-12-25 20:36:52 +08:00
Guanghao Zhang 8da7366fc2 HBASE-17348 Remove the unused hbase.replication from javadoc/comment/book completely 2016-12-25 08:46:29 +08:00
ChiaPing Tsai 8cb55c4080 HBASE-17174 Refactor the AsyncProcess, BufferedMutatorImpl, and HTable
Signed-off-by: zhangduo <zhangduo@apache.org>
2016-12-24 12:02:05 +08:00
Jerry He 992e5717d4 HBASE-16010 Put draining function through Admin API (Matt Warhaftig) 2016-12-23 13:41:36 -08:00
Guanghao Zhang b3f2bec099 HBASE-17335 enable/disable replication peer requests should be routed through master 2016-12-23 09:27:12 +08:00
zhangduo 09bb428763 HBASE-17334 Add locate row before/after support for AsyncRegionLocator 2016-12-22 20:39:01 +08:00
Guanghao Zhang e1f4aaeacd HBASE-11392 add/remove peer requests should be routed through master 2016-12-21 13:27:13 +08:00
zhangduo a2e967d92f HBASE-17142 Implement multi get 2016-12-20 20:41:55 +08:00
zhangduo f041306cda HBASE-17282 Reduce the redundant requests to meta table 2016-12-18 08:52:06 +08:00
Michael Stack a5ee36d937 HBASE-17326 Fix findbugs warning in BufferedMutatorParams Fix above and
the other hbase-server findbugs complaint about null-check
Addendum to fix complaint out of BMParams#clone. Added CN_IDIOM_NO_SUPER_CALL
handling.
2016-12-16 21:37:54 -08:00
Michael Stack c3ce02d592 HBASE-17326 Fix findbugs warning in BufferedMutatorParams Fix above and the other hbase-server findbugs complaint about null-check 2016-12-16 13:47:58 -08:00
Michael Stack a5a48dbd23 HBASE-17313 Add BufferedMutatorParams#clone method (Joep Rottinghuis); AMENDMENT -- ADD MISSING FIELD 2016-12-14 08:15:47 -08:00
Michael Stack a73b0b3e6d HBASE-17313 Add BufferedMutatorParams#clone method (Joep Rottinghuis) 2016-12-13 22:47:41 -08:00
Michael Stack 68ce3f1e3b HBASE-17277 Allow alternate BufferedMutator implemenation Specify the name of an alternate BufferedMutator implementation by either:
+ Setting "hbase.client.bufferedmutator.classname" to the name of the
alternate implementation class
+ Or, by setting implementationClassName on BufferedMutatorParams and
passing the amended BufferedMutatorParams when calling Connection#getBufferedMutator.

Add a test to exercise both means.
2016-12-13 22:38:58 -08:00
eshcar a9310436d5 HBASE-17294: External configuration for memory compaction
Signed-off-by: Michael Stack <stack@apache.org>
2016-12-13 17:16:00 -08:00
tedyu 2333596279 HBASE-17296 Provide per peer throttling for replication (Guanghao Zhang) 2016-12-13 04:20:20 -08:00
tedyu adb319f5c2 HBASE-17297 Single Filter in parenthesis cannot be parsed correctly (Xuesen Liang) 2016-12-12 12:07:34 -08:00
zhangduo b3ae87bd7d HBASE-17251 Add a timeout parameter when locating region 2016-12-08 09:55:29 +08:00
anoopsamjohn 61220e4d7c HBASE-17249 Get/Scan's setTimeRange/setColumnFamilyTimeRange can take the TimeRange reference as the parameter instead of creating a new setColumnFamilyTimeRange instance. (huaxiang sun) 2016-12-07 12:22:41 +05:30
anoopsamjohn f112427425 HBASE-17207 Arrays.asList() with too few arguments. (John Leach) 2016-12-06 14:42:14 +05:30
tedyu 1c8822ddff HBASE-17170 HBase is also retrying DoNotRetryIOException because of class loader differences (Ankit Singhal) 2016-12-05 10:15:09 -08:00
anoopsamjohn e10baacd3e HBASE-17245 Replace HTableDescriptor#htd.getColumnFamilies().length with a low-cost implementation. (huaxiang sun) 2016-12-05 13:28:57 +05:30
Xiang Li 004f0abb46 HBASE-14882: Provide a Put API that adds the provided family, qualifier, value without copying
Signed-off-by: anoopsamjohn <anoopsamjohn@gmail.com>
2016-12-05 13:16:46 +05:30
Phil Yang c73180d456 HBASE-17246 TestSerialReplication#testRegionMerge fails in master branch 2016-12-04 20:58:14 +08:00
Ramkrishna 3b72b69d0e HBASE-17191 Make use of UnsafeByteOperations#unsafeWrap(ByteBuffer buffer)
in PBUtil#toCell(Cell cell) (Ram)
2016-12-02 12:48:06 +05:30
Stephen Yuan Jiang 0a24077841 HBASE-16119 Procedure v2 - Reimplement Merge region (Stephen Yuan Jiang) 2016-12-01 22:41:15 -08:00
Guanghao Zhang b3d8d06703 HBASE-17205 Add a metric for the duration of region in transition 2016-12-01 10:13:37 -08:00
Jonathan M Hsieh eeaea4aea3 HBASE-17224 Fix lots of spelling errors in HBase logging and exception messages (Grant Sohn) 2016-12-01 08:57:16 -08:00
zhangduo 540ede376b HBASE-16648 [JDK8] Use computeIfAbsent instead of get and putIfAbsent 2016-12-01 21:17:55 +08:00
John Leach 37d7b57128 HBASE-17216 Fields that can safetly be made static 2016-11-30 22:03:35 -08:00
Yu Li 1f3c6f4c07 HBASE-17114 Add an option to set special retry pause when encountering CallQueueTooBigException 2016-12-01 13:38:13 +08:00
Yu Li 15fe3d3279 HBASE-17212 Should add null checker on table name in HTable and RegionServerCallable constructor (addendum) 2016-12-01 13:28:24 +08:00
Yu Li f2e363b589 HBASE-17212 Should add null checker on table name in HTable and RegionServerCallable constructor 2016-12-01 02:25:31 +08:00
Yu Li 8adf6857c7 HBASE-17211 Add more details in log when UnknownScannerException thrown in ScannerCallable 2016-12-01 01:13:18 +08:00
zhangduo 890fcbd0e6 HBASE-17167 Pass mvcc to client when scan 2016-11-30 10:11:04 +08:00