Commit Graph

892 Commits

Author SHA1 Message Date
tedyu 6624c676fe HBASE-16658 Optimize UTF8 string/byte conversions (binlijin) 2016-09-20 13:08:04 -07:00
zhangduo 6eb6225456 HBASE-7612 [JDK8] Replace use of high-scale-lib counters with intrinsic facilities 2016-09-19 13:37:24 +08:00
Jerry He edc0ef3fe4 HBASE-16598 Enable zookeeper useMulti always and clean up in HBase code 2016-09-17 16:51:26 -07:00
Phil Yang 8ef6c76344 HBASE-16388 Prevent client threads being blocked by only one slow region server
Signed-off-by: stack <stack@apache.org>
2016-09-14 09:08:20 -07:00
tedyu 981200bf13 HBASE-16612 Use array to cache Types for KeyValue.Type.codeToType (Phil Yang) 2016-09-13 09:54:27 -07:00
anoopsamjohn 77b327320a HBASE-16229 Cleaning up size and heapSize calculation. 2016-09-12 23:23:38 -07:00
tedyu 8855670cd7 HBASE-16616 Rpc handlers stuck on ThreadLocalMap.expungeStaleEntry (Tomu Tsuruhara) 2016-09-12 15:49:23 -07:00
tedyu 8290b2c8fa HBASE-16609 Fake cells EmptyByteBufferedCell created in read path not implementing SettableSequenceId (Yu Sun) 2016-09-12 08:53:22 -07:00
binlijin fc224ed0ed HBASE-16530 Reduce DBE code duplication
Signed-off-by: Yu Li <liyu@apache.org>
2016-09-08 13:48:27 +08:00
Andrew Purtell 520c3cc4e9 Amend HBASE-16538 Changes the way version information is stored during build
Generated Version class needs an interface audience annotation
2016-09-02 19:54:05 -07:00
Apekshit Sharma 2fcc691b16 HBASE-16538 Changes the way version information is stored during build.
Instead of writing package-info.java with VersionAnnotation, saveVersion.sh now writes Version.java with static members.

Change-Id: I009f440fa049f409e10cb3f1c3afb483bc2aa876
2016-09-02 16:06:41 -07:00
tedyu 7b95ac117d HBASE-16502 Reduce garbage in BufferedDataBlockEncoder - addendum adopts Hiroshi's suggestion (binlijin) 2016-08-30 18:04:34 -07:00
Matteo Bertozzi af33f94513 HBASE-16522 Procedure v2 - Cache system user and avoid IOException 2016-08-30 15:39:49 -07:00
Apekshit Sharma c66bb48ce8 HBASE-16101 Tool to microbenchmark procedure WAL performance.
Change-Id: I8ec158319395d2ec8e36641a3beab2694f7b6aef
2016-08-30 13:31:58 -07:00
Matteo Bertozzi 2acd788dce HBASE-16082 Procedure v2 - Move out helpers from MasterProcedureScheduler 2016-08-30 09:44:35 -07:00
Matteo Bertozzi 1b9af2a2fa HBASE-16508 Move UnexpectedStateException to common 2016-08-26 16:40:30 -07:00
anoopsamjohn e0aee7c74f Revert "HBASE-14882 Provide a Put API that adds the provided family, qualifier, value without copying. (Xiang Li)"
This reverts commit a63ba09c99.
2016-08-26 18:01:59 +05:30
anoopsamjohn a63ba09c99 HBASE-14882 Provide a Put API that adds the provided family, qualifier, value without copying. (Xiang Li) 2016-08-26 17:59:48 +05:30
anoopsamjohn 0d99e827b2 HBASE-16213 A new HFileBlock structure for fast random get. (binlijin) 2016-08-26 10:50:36 +05:30
tedyu b1ee8a88c3 HBASE-16502 Reduce garbage in BufferedDataBlockEncoder (binlijin) 2016-08-25 20:35:30 -07:00
anoopsamjohn 32c21f4594 HBASE-14921 In-Memory MemStore Flush and Compaction : Memory optimizations. (Anastasia) 2016-08-24 09:25:21 +05:30
Ramkrishna 2f7b9b5423 HBASE-16444 - Remove white space 2016-08-23 12:32:26 +05:30
Ramkrishna 2aae923c32 HBASE-16444 CellUtil#estimatedSerializedSizeOfKey() should consider
KEY_INFRASTRUCTURE_SIZ (Ram)
2016-08-23 10:53:33 +05:30
Apekshit Sharma ae42a934d8 HBASE-16467 Move AbstractHBaseTool to hbase-common.
Change-Id: I64775f875f6900520e66c22c007704a067e8c2a4
2016-08-22 16:06:17 -07:00
anoopsamjohn 5f61f9cc5c HBASE-16405 Change read path Bloom check to work with Cells with out any copy. 2016-08-19 11:25:35 +05:30
Matteo Bertozzi e637a61e26 HBASE-16378 Procedure v2 - Make ProcedureException extend HBaseException 2016-08-17 14:31:08 -07:00
Ramkrishna 285e104176 HBASE-15554 - StoreFile$Writer.appendGeneralBloomFilter generates extra KV
(Ram)
2016-08-12 10:21:41 +05:30
stack 7e32510513 HBASE-16363 Correct javadoc for qualifier length and value (Xiang Li) 2016-08-10 17:53:13 -07:00
stack 45bb6180a3 REVERT of revert of "HBASE-16308 Contain protobuf references Gather up the pb references into a few locations only rather than have pb references distributed all about the code base."
This is a revert of a revert; i.e. we are adding back the change only adding
back with fixes for the broken unit test; was a real issue on a test that
went in just at same time as this commit; I was getting a new nonce on each
retry rather than getting one for the mutation.

Other changes since revert are more hiding of RpcController. Use
accessor method rather than always pass in a RpcController

Walked back retrying operations that used to be single-shot (though
code comment said need a retry) because it opens a can of worms where
we retry stuff like bad column family when we shouldn't (needs
work adding in DoNotRetryIOEs)

Changed name of class from PayloadCarryingServerCallable to
CancellableRegionServerCallable.

Fix javadoc and findbugs warnings.

Fix case of not initializing the ScannerCallable RpcController.

Below is original commit message:

 Remove mention of ServiceException and other protobuf classes from all over the codebase.
 Purge TimeLimitedRpcController. Lets just have one override of RpcController.
        M hbase-client/src/main/java/org/apache/hadoop/hbase/client/AbstractRegionServerCallable.java
         Cleanup. Make it clear this is an odd class for async hbase intro.
        M hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTable.java
         Refactor of RegionServerCallable allows me clean up a bunch of
         boilerplate in here and remove protobuf references.
        M hbase-client/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java
          Purge protobuf references everywhere except a reference to a throw of a
          ServiceException in method checkHBaseAvailable. I deprecated it in favor
          of new available method (the SE is not actually needed)
        M hbase-client/src/main/java/org/apache/hadoop/hbase/client/PayloadCarryingServerCallable.java
         Move the RetryingTimeTracker instance in here from HTable.
         Allows me to contain tracker and remove a repeated code in HTable.
        M hbase-client/src/main/java/org/apache/hadoop/hbase/client/RegionServerCallable.java
         Clean up move set up of rpc in here rather than have it repeat in HTable.
         Allows me to remove protobuf references from a bunch of places.
    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/FlushRegionCallable.java
     Make use of the push of boilerplate up into RegionServerCallable
    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/MultiServerCallable.java
    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/PayloadCarryingServerCallable.java
    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/RegionAdminServiceCallable.java
    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/RpcRetryingCallerWithReadReplicas.java
    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/ScannerCallable.java
    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/SecureBulkLoadClient.java
    M hbase-server/src/main/java/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.java
     Move boilerplate up into superclass.
    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/RetryingTimeTracker.java
     Cleanup
    M hbase-client/src/main/java/org/apache/hadoop/hbase/ipc/PayloadCarryingRpcController.java
    M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
    M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/WALEditsReplaySink.java
    M hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/RegionReplicaReplicationEndpoint.java
     Factor in TimeLimitedRpcController. Just have one RpcController override.
    D hbase-client/src/main/java/org/apache/hadoop/hbase/ipc/TimeLimitedRpcController.java
     Removed. Lets have one override of pb rpccontroller only.
    M hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java
     (handleRemoteException) added
     (toText) added
2016-08-10 10:12:06 -07:00
Phil Yang 5cadcd59aa HBASE-9465 Push entries to peer clusters serially
Signed-off-by: zhangduo <zhangduo@apache.org>
2016-08-09 15:25:50 +08:00
Vivek 30d7eeaefe HBASE-15866 Split hbase.rpc.timeout into *.read.timeout and *.write.timeout
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Amending-Author: Andrew Purtell <apurtell@apache.org>
2016-08-06 16:55:09 -07:00
stack 0206dc67d6 Revert "HBASE-16308 Contain protobuf references Gather up the pb references into a few locations only rather than have pb references distributed all about the code base."
This reverts commit ed87a81b4b.
2016-08-05 15:18:48 -07:00
stack ed87a81b4b HBASE-16308 Contain protobuf references Gather up the pb references into a few locations only rather than have pb references distributed all about the code base.
Purge ServiceException from Callable subclasses by pushing SE handling
up into the parent Callable class (varies by context but this is basic
patten). Allows us remove a bunch of boilerplate.
Do this in the public facing classes in particular (though if
an API has SE in it -- which a few do, this patch leaves these
untouched -- for now.) Make it so HBaseAdmin and HTable have no
direct pb imports (except for endpoint processor API).

Change a few of the HBaseAdmin calls to be retrying where comments
ask that we do retry rather than one time.

Purge TimeLimitedRpcController. Lets just have one override of RpcController.

        M hbase-client/src/main/java/org/apache/hadoop/hbase/client/AbstractRegionServerCallable.java
         Cleanup. Make it clear this is an odd class for async hbase intro.

        M hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTable.java
         Refactor of RegionServerCallable allows me clean up a bunch of
         boilerplate in here and remove protobuf references.

        M hbase-client/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java
          Purge protobuf references everywhere except a reference to a throw of a
          ServiceException in method checkHBaseAvailable. I deprecated it in favor
          of new available method (the SE is not actually needed)

        M hbase-client/src/main/java/org/apache/hadoop/hbase/client/PayloadCarryingServerCallable.java
         Move the RetryingTimeTracker instance in here from HTable.
         Allows me to contain tracker and remove a repeated code in HTable.

        M hbase-client/src/main/java/org/apache/hadoop/hbase/client/RegionServerCallable.java
         Clean up move set up of rpc in here rather than have it repeat in HTable.
         Allows me to remove protobuf references from a bunch of places.

    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/FlushRegionCallable.java
     Make use of the push of boilerplate up into RegionServerCallable

    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/MultiServerCallable.java
    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/PayloadCarryingServerCallable.java
    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/RegionAdminServiceCallable.java
    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/RpcRetryingCallerWithReadReplicas.java
    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/ScannerCallable.java
    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/SecureBulkLoadClient.java
    M hbase-server/src/main/java/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.java
     Move boilerplate up into superclass.

    M hbase-client/src/main/java/org/apache/hadoop/hbase/client/RetryingTimeTracker.java
     Cleanup

    M hbase-client/src/main/java/org/apache/hadoop/hbase/ipc/PayloadCarryingRpcController.java
    M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
    M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/WALEditsReplaySink.java
    M hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/RegionReplicaReplicationEndpoint.java
     Factor in TimeLimitedRpcController. Just have one RpcController override.

    D hbase-client/src/main/java/org/apache/hadoop/hbase/ipc/TimeLimitedRpcController.java
     Removed. Lets have one override of pb rpccontroller only.

    M hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java
     (handleRemoteException) added
     (toText) added

Signed-off-by: stack <stack@apache.org>
2016-08-05 10:13:58 -07:00
Sean Busbey 60b79e2daa HBASE-16321 ensure no findbugs-jsr305
Signed-off-by: Esteban Gutierrez <esteban@apache.org>
2016-08-05 10:16:29 -05:00
zhangduo b35cf8f93a HBASE-16225 Refactor ScanQueryMatcher 2016-08-02 14:01:28 +08:00
stack c29024c017 HBASE-16256 Purpose of EnvironmentEdge, EnvironmentEdgeManager (Sai Teja Ranuva) 2016-07-29 16:34:22 -07:00
anoopsjohn 00c2a5da7b HBASE-16286 When TagRewriteCell are not copied to MSLAB, deep clone it while adding to Memstore. 2016-07-27 22:29:26 +05:30
zhangduo bcf409e11f HBASE-16280 Use hash based map in SequenceIdAccounting 2016-07-26 11:31:32 +08:00
anoopsjohn 2df0ef549a HBASE-16205 When Cells are not copied to MSLAB, deep clone it while adding to Memstore. 2016-07-25 22:58:32 +05:30
Matteo Bertozzi cc766df28b HBASE-16272 Overflow in ServerName's compareTo method (Huaxiang Sun) 2016-07-22 15:28:04 -07:00
Jerry He 70f330dc84 Consolidate SecureBulkLoadEndpoint into HBase core as default for bulk load 2016-07-19 19:53:10 -07:00
Jerry He 632969787a HBASE-14548 Expand how table coprocessor jar and dependency path can be specified (Xiang Li) 2016-07-09 18:01:49 -07:00
stack 496fd9837a HBASE-16176 Bug fixes/improvements on HBASE-15650 Remove
TimeRangeTracker as point of contention when many threads reading a StoreFile
 Fixes HBASE-16074 ITBLL fails, reports lost big or tiny families broken
 scanning because of a side effect of a clean up in  HBASE-15650 to make
 TimeRange construction consistent exposed a latent issue in
 TimeRange#compare. See HBASE-16074 for more detail.

Also change HFile Writer constructor so we pass in the TimeRangeTracker, if one,
on construction rather than set later (the flag and reference were not volatile
so could have made for issues in concurrent case). And make sure the construction
of a TimeRange from a TimeRangeTracer on open of an HFile Reader never makes a
bad minimum value, one that would preclude us reading any values from a file
(set min to 0)

M hbase-common/src/main/java/org/apache/hadoop/hbase/io/TimeRange.java
 Call through to next constructor (if minStamp was 0, we'd skip setting
 allTime=true). Add asserts that timestamps are not < 0 cos it messes
 us up if they are (we already were checking for < 0 on construction but
 assert passed in timestamps are not < 0).

M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
 Add constructor override that takes a TimeRangeTracker (set when flushing
 but not when compacting)

M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java
 Add override creating an HFile in tmp that takes a TimeRangeTracker

M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFile.java
 Add override for HFile Writer that takes a TimeRangeTracker Take it on
 construction instead of having it passed by a setter later (flags and
 reference set by the setter were not volatile... could have been prob
 in concurrent case)

M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/TimeRangeTracker.java
 Log WARN if bad initial TimeRange value (and then 'fix' it)

M hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestTimeRangeTracker.java
 A few tests to prove serialization works as expected and that we'll get a bad min if not constructed properly.

M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/ScanQueryMatcher.java
 Handle OLDEST_TIMESTAMP explictly. Don't expect TimeRange to do it.

M hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestQueryMatcher.java
 Refactor from junit3 to junit4 and add test for this weird case.
2016-07-08 18:20:31 -07:00
Andrew Purtell 318751cfd6 HBASE-16091 Canary takes lot more time when there are delete markers in the table (Vishal Khandelwal) 2016-07-05 11:13:48 -07:00
stack d1d8cc71c9 HBASE-16150 Remove ConcurrentIndex (Hiroshi Ikeda) 2016-06-30 15:03:32 -07:00
tedyu 6fb0dd07a8 HBASE-16139 Use CellUtil instead of KeyValueUtil in Import (NIDHI GAMBHIR) 2016-06-29 02:45:00 -07:00
chenheng 68c1b34dbc HBASE-16040 Remove configuration "hbase.replication" 2016-06-24 10:41:35 +08:00
Elliott Clark 65a8d77433 HBASE-16061 Allow logging to a buffered console 2016-06-17 17:06:12 -07:00
Ashu Pachauri 3abd52bdc6 HBASE-15429 Add split policy for busy regions
Signed-off-by: Elliott Clark <eclark@apache.org>
2016-06-16 17:36:54 -07:00
Enis Soztutar bff35d6387 HBASE-15950 Fix memstore size estimates to be more tighter 2016-06-15 13:34:39 -07:00