Commit Graph

1356 Commits

Author SHA1 Message Date
Stephen Yuan Jiang b972839ca1 HBASE-16844 Procedure V2: DispatchMergingRegionsProcedure to use base class StateMachineProcedure for abort and rollback (Stephen Yuan Jiang) 2016-10-14 14:09:35 -07:00
Ramkrishna 635ea05b9a HBASE-16729 Define the behavior of (default) empty FilterList(ChiaPing
Tsai)
2016-10-14 23:14:33 +05:30
zhangduo 3fe7508295 HBASE-15921 Add first AsyncTable impl and create TableImpl based on it 2016-10-14 22:52:52 +08:00
Phil Yang 88ff71b91b HBASE-16664 Timeout logic in AsyncProcess is broken
Signed-off-by: chenheng <chenheng@apache.org>
2016-10-13 16:15:43 +08:00
Michael Stack a46134bffc HBASE-16731 Inconsistent results from the Get/Scan if we use the empty FilterList (ChiaPing Tsai) 2016-10-12 12:13:41 -07:00
Ramkrishna 58e843dae2 HBASE-16372 References to previous cell in read path should be avoided
(Ram)
2016-10-06 14:19:12 +05:30
anoopsamjohn 06758bf630 HBASE-16759 Avoid ByteString.copyFrom usage wherever possible. 2016-10-06 00:27:34 +05:30
zhangduo 3aa4dfa73d HBASE-16690 Move znode path configs to a separated class 2016-10-05 20:12:44 +08:00
anoopsamjohn 617dfe18cd HBASE-16758 back HBaseZeroCopyByteStringer stuff. 2016-10-05 12:57:13 +05:30
stack 95c1dc93fb HBASE-15638 Shade protobuf
Which includes

    HBASE-16742 Add chapter for devs on how we do protobufs going forward

    HBASE-16741 Amend the generate protobufs out-of-band build step
    to include shade, pulling in protobuf source and a hook for patching protobuf

    Removed ByteStringer from hbase-protocol-shaded. Use the protobuf-3.1.0
    trick directly instead. Makes stuff cleaner. All under 'shaded' dir is
    now generated.

    HBASE-16567 Upgrade to protobuf-3.1.x
    Regenerate all protos in this module with protoc3.
    Redo ByteStringer to use new pb3.1.0 unsafebytesutil
    instead of HBaseZeroCopyByteString

    HBASE-16264 Figure how to deal with endpoints and shaded pb Shade our protobufs.
    Do it in a manner that makes it so we can still have in our API references to
    com.google.protobuf (and in REST). The c.g.p in API is for Coprocessor Endpoints (CPEP)

            This patch is Tactic #4 from Shading Doc attached to the referenced issue.
            Figuring an appoach took a while because we have Coprocessor Endpoints
            mixed in with the core of HBase that are tough to untangle (FIX).

            Tactic #4 (the fourth attempt at addressing this issue) is COPY all but
            the CPEP .proto files currently in hbase-protocol to a new module named
            hbase-protocol-shaded. Generate .protos again in the new location and
            then relocate/shade the generated files. Let CPEPs keep on with the
            old references at com.google.protobuf.* and
            org.apache.hadoop.hbase.protobuf.* but change the hbase core so all
            instead refer to the relocated files in their new location at
            org.apache.hadoop.hbase.shaded.com.google.protobuf.*.

            Let the new module also shade protobufs themselves and change hbase
            core to pick up this shaded protobuf rather than directly reference
            com.google.protobuf.

            This approach allows us to explicitly refer to either the shaded or
            non-shaded version of a protobuf class in any particular context (though
            usually context dictates one or the other). Core runs on shaded protobuf.
            CPEPs continue to use whatever is on the classpath with
            com.google.protobuf.* which is pb2.5.0 for the near future at least.

            See above cited doc for follow-ons and downsides. In short, IDEs will complain
            about not being able to find the shaded protobufs since shading happens at package
            time; will fix by checking in all generated classes and relocated protobuf in
            a follow-on. Also, CPEPs currently suffer an extra-copy as marshalled from
            non-shaded to shaded. To fix. Finally, our .protos are duplicated; once
            shaded, and once not. Pain, but how else to reveal our protos to CPEPs or
            C++ client that wants to talk with HBase AND shade protobuf.

            Details:

            Add a new hbase-protocol-shaded module. It is a copy of hbase-protocol
    i       with all relocated offset from o.a.h.h. to o.a.h.h.shaded. The new module
            also includes the relocated pb. It does not include CPEPs. They stay in
            their old location.

            Add another module hbase-endpoint which has in it all the endpoints
            that ship as part of hbase -- at least the ones that are not
            entangled with core such as AccessControl and Auth. Move all protos
            for these CPEPs here as well as their unit tests (mostly moving a
            bunch of stuff out of hbase-server module)

            Much of the change looks like this:

                 -import org.apache.hadoop.hbase.protobuf.ProtobufUtil;
                 -import org.apache.hadoop.hbase.protobuf.generated.ClusterIdProtos;
                 +import org.apache.hadoop.hbase.protobuf.shaded.ProtobufUtil;
                 +import org.apache.hadoop.hbase.shaded.protobuf.generated.ClusterIdProtos;

            In HTable and in HBaseAdmin, regularize the way Callables are used and also hide
            protobuf usage as much as possible moving it up into Callable super classes or out
            to utility classes. Still TODO is adding in of retries, etc., but can wait on
            procedure which will redo all this.

            Also in HTable and HBaseAdmin as well as in HRegionServer and Server, be explicit
            when using non-shaded protobuf. Do the full-path so it is clear. This is around
            endpoint coprocessors registration of services and execution of CPEP methods.

            Shrunk ProtobufUtil by moving methods used by one CPEP only back to the CPEP either
            into Client class or as new Util class; e.g. AccessControlUtil.

            There are actually two versions of ProtobufUtil now; a shaded one and a subset
            that is used by CPEPs doing non-shaded work.

            Made it so hbase-common no longer depends on hbase-protocol (with Matteo's help)

            R*Converter classes got moved down under shaded package -- they are for internal
            use only. There are no non-shaded versions of these classes.

            D hbase-client/src/main/java/org/apache/hadoop/hbase/client/AbstractRegionServerCallable
            D RetryingCallableBase
             Not used anymore and we have too many tiers of Callables so removed/cleaned-up.

            A ClientServicecallable
             Had to add this one. RegionServerCallable was made generic so it could be used
             for a few Interfaces (Client and Admin). Then added ClientServiceCallable to
             implement RegionServerCallable with the Client Interface.
2016-10-03 21:37:32 -07:00
Jerry He 3757da643d HBASE-16732 Avoid possible NPE in MetaTableLocator 2016-09-29 14:00:46 -07:00
anoopsamjohn b0fcca6d7b HBASE-16691 Optimize KeyOnlyFilter by utilizing KeyOnlyCell.(binlijin) 2016-09-27 22:48:04 +05:30
tedyu aa4a678ebf HBASE-16691 Optimize KeyOnlyFilter by utilizing KeyOnlyCell - revert due to TestFilter failure 2016-09-27 03:37:54 -07:00
tedyu 219c786457 HBASE-16672 Add option for bulk load to copy hfile(s) instead of renaming 2016-09-26 18:56:38 -07:00
tedyu 890e3f223f HBASE-16691 Optimize KeyOnlyFilter by utilizing KeyOnlyCell (binlijin) 2016-09-26 09:06:00 -07:00
anoopsamjohn da37fd9cdc HBASE-16705 Eliminate long to Long auto boxing in LongComparator. (binlijin) 2016-09-26 11:11:52 +05:30
chenheng 21969f5159 HBASE-16665 Check whether KeyValueUtil.createXXX could be replaced by CellUtil without copy 2016-09-25 14:06:55 +08:00
Enis Soztutar eb112783ae HBASE-16604 Scanner retries on IOException can cause the scans to miss data - RECOMMIT after revert 2016-09-23 11:27:13 -07:00
Enis Soztutar 39db0cac78 Revert "HBASE-16604 Scanner retries on IOException can cause the scans to miss data"
This reverts commit 83cf44cd3f.

Reverting because accidental files are committed with this.
2016-09-23 11:25:23 -07:00
Jerry He 50b051ade1 HBASE-16257 Move staging dir to be under hbase root dir 2016-09-23 10:07:58 -07:00
Enis Soztutar 83cf44cd3f HBASE-16604 Scanner retries on IOException can cause the scans to miss data 2016-09-22 12:06:11 -07:00
Jonathan M Hsieh c9d0d11e18 HBASE-12088 Addendum - fix spacing 2016-09-21 20:59:42 -07:00
Jonathan M Hsieh a90d433a2c HBASE-12088 Remove unused hadoop-1.0, hadoop-1.1 profiles from non-root poms 2016-09-21 20:45:03 -07:00
zhangduo 5568929dd2 HBASE-16654 Better handle channelInactive and close for netty rpc client 2016-09-21 22:36:47 +08:00
chenheng c67983ebf8 HBASE-16659 Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in some places (binlijin) 2016-09-21 15:25:36 +08:00
Ramkrishna c5b8aababe HBASE-16335 RpcClient under heavy load leaks some netty bytebuf (Ram) 2016-09-19 16:12:15 +05:30
Jerry He edc0ef3fe4 HBASE-16598 Enable zookeeper useMulti always and clean up in HBase code 2016-09-17 16:51:26 -07:00
Enis Soztutar 1a1003a482 HBASE-16447 Replication by namespaces config in peer (Guanghao Zhang) 2016-09-16 11:47:42 -07:00
chenheng 2cf8907db5 HBASE-16631 Extract AsyncRequestFuture related code from AsyncProcess 2016-09-17 00:35:23 +08: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
chenheng cd9f422373 HBASE-16611 Flakey org.apache.hadoop.hbase.client.TestReplicasClient.testCancelOfMultiGet 2016-09-13 14:52:50 +08:00
Umesh Agashe 422734e73d HBASE-15297 Correct handling of namespace existence checks in shell.
Changes namespace_exists? method in SecurityAdmin ruby code to catch NamespaceNotFoundException
and modified Admin.java file to document the exception.

Signed-off-by: Sean Busbey <busbey@apache.org>
2016-09-12 23:29:42 -07:00
chenheng 2566cfeb60 HBASE-16592 Unify Delete request with AP 2016-09-12 23:23:38 -07:00
Dustin Pho c57acf28e7 HBASE-16540 Adding checks in Scanner's setStartRow and setStopRow for invalid row key sizes.
Signed-off-by: Gary Helmling <garyh@apache.org>
2016-09-12 23:23:27 -07:00
zhangduo 0860bdb675 HBASE-16614 Use daemon thread for netty event loop 2016-09-12 22:05:03 +08:00
chenheng c19d2cabbd HBASE-16607 Make NoncedRegionServerCallable extend CancellableRegionServerCallable 2016-09-12 11:03:29 +08:00
chenheng 2c3b0f2c0b HBASE-16606 Remove some duplicate code in HTable 2016-09-12 10:57:21 +08:00
chenheng cc2a40a78f HBASE-16596 Reduce redundant interfaces in AsyncProcess 2016-09-10 11:13:28 +08:00
tedyu d7e5c6fa8e HBASE-16505 Add AsyncRegion interface to pass deadline and support async operations - revert due to open questions 2016-09-08 11:55:46 -07:00
tedyu 1574c6ef39 HBASE-16505 Add AsyncRegion interface to pass deadline and support async operations (Phil Yang) 2016-09-08 06:57:03 -07:00
zhangduo c04b389181 HBASE-16445 Refactor and reimplement RpcClient 2016-09-08 20:32:56 +08:00
tedyu e9cfbfd107 HBASE-16572 Sync method in RecoverableZooKeeper failed to pass callback function in (Allan Yang) 2016-09-07 11:35:35 -07:00
tedyu ab07f0087b HBASE-16541 Avoid unnecessary cell copy in Result#compareResults (ChiaPing Tsai) 2016-09-04 07:06:31 -07:00
zhangduo 91227f8f98 HBASE-16516 Revisit the implementation of PayloadCarryingRpcController 2016-09-04 09:16:15 +08:00
tedyu 592245ff13 HBASE-16556 The read/write timeout are not used in HTable.delete(List), HTable.get(List), and HTable.existsAll(List) (ChiaPing Tsai) 2016-09-03 17:14:57 -07:00
zhangduo e30a66b944 HBASE-16526 Addendum add missing stuffs 2016-09-01 11:48:35 +08:00
zhangduo 45af3831fe HBASE-16526 Add more ipc tests 2016-08-31 20:44:56 +08:00
tedyu c536c85116 HBASE-16515 AsyncProcess has incorrent count of tasks if the backoff policy is enabled - addendum fixes timeout of TestAsyncProcess#testSubmitRandomSizeRequest (Chiaping Tsai) 2016-08-31 02:05:12 -07:00
zhangduo 647a65ce01 HBASE-16531 Move cell block related code out of IPCUtil 2016-08-31 13:09:22 +08:00
Matteo Bertozzi 4a4f8e7049 HBASE-16519 Procedure v2 - Avoid sync wait on DDLs operation 2016-08-30 09:45:56 -07:00
tedyu 0f92e943ac HBASE-16515 AsyncProcess has incorrent count of tasks if the backoff policy is enabled (ChiaPing Tsai) 2016-08-30 08:01:49 -07:00
zhangduo 0d05c75184 HBASE-16510 Reset RpcController before retry 2016-08-30 16:56:28 +08:00
chenheng c000f29e47 HBASE-16224 Reduce the number of RPCs for the large PUTs (ChiaPing Tsai) 2016-08-30 06:35:33 +08: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
zhangduo a1f760ff76 HBASE-16433 Remove AsyncRpcChannel related stuffs 2016-08-25 08:15:46 +08:00
Josh Elser 1ca849269d HBASE-16376 Scan#setBatch(int) javadoc update WRT partial results
Signed-off-by: Enis Soztutar <enis@apache.org>
2016-08-24 05:06:30 -07:00
Ashish Singhi 77a7394f17 HBASE-16446 append_peer_tableCFs failed when there already have this table's partial cfs in the peer (Guanghao Zhang) 2016-08-23 15:28:33 +05:30
Esteban Gutierrez abc64fa69f HBASE-16450 Shell tool to dump replication queues
New tool to dump existing replication peers, configurations and
queues when using HBase Replication. The tool provides two flags:

 --distributed  This flag will poll each RS for information about
                the replication queues being processed on this RS.
                By default this is not enabled and the information
                about the replication queues and configuration will
                be obtained from ZooKeeper.
 --hdfs         When --distributed is used, this flag will attempt
                to calculate the total size of the WAL files used
                by the replication queues. Since its possible that
                multiple peers can be configured this value can be
                overestimated.

Signed-off-by: Matteo Bertozzi <matteo.bertozzi@cloudera.com>
2016-08-22 19:50:10 -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
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
Ramkrishna 2d203e6053 HBASE-16310 Revisit the logic of filterRowKey for Filters (Ram) 2016-08-10 13:54:25 +05:30
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
Phil Yang e5f9df1e23 HBASE-12770 Don't transfer all the queued hlogs of a dead server to the same alive server
Signed-off-by: zhangduo <zhangduo@apache.org>
2016-08-08 16:30:23 +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
Ramkrishna e8f08ba0c7 HBASE-16303 Addendum as the wrong patch was committed 2016-08-05 13:06:46 +05:30
stack 975f0dd958 HBASE-9899 for idempotent operation dups, return the result instead of throwing conflict exception (Guanghao Zhang) 2016-08-04 12:40:19 -07:00
Stevo Slavić 544dc1e558 HBASE-16355 Invalid hbase-common test-jar dependency scope
hbase-client has hbase-common test-jar as dependency in compile scope, while it should be test scope instead.
This patch fixes the bug.

closes #12

Signed-off-by: Sean Busbey <busbey@apache.org>
2016-08-04 01:17:51 -05:00
Enis Soztutar b35e1f41b8 HBASE-16315 RegionSizeCalculator prints region names as binary without escapes 2016-08-02 16:35:25 -07:00
Ramkrishna 2c5a0fcf1f HBASE-14881 Provide a Put API that uses the provided row without coping
(Xiang Li)
2016-08-01 14:35:49 +05:30
Yu Li ab9df0a014 HBASE-16289 AsyncProcess stuck messages need to print region/server 2016-07-29 11:21:42 +08:00
Phil Yang 6dbce2a8cb HBASE-16266 Do not throw ScannerTimeoutException when catch UnknownScannerException
Signed-off-by: zhangduo <zhangduo@apache.org>
2016-07-25 22:26:19 +08:00
Stephen Yuan Jiang bdd7782f05 HBASE-16008 A robust way deal with early termination of HBCK (Stephen Yuan Jiang) 2016-07-23 14:47:11 -07:00
Stephen Yuan Jiang cd0b85e0a8 Revert HBASE-15406: Split / merge switch left disabled after early termination of hbck (HBASE-16008 will address this issue) 2016-07-22 20:09:03 -07:00
Gary Helmling 65834a1ced HBASE-16217 Pass through the calling user in ObserverContext 2016-07-21 16:45:09 -07:00
Jerry He 70f330dc84 Consolidate SecureBulkLoadEndpoint into HBase core as default for bulk load 2016-07-19 19:53:10 -07:00
Stephen Yuan Jiang 638ca24f01 HBASE-14552 (addendum) Procedure V2: Reimplement DispatchMergingRegionHandler (add nonce support) (Stephen Yuan Jiang) 2016-07-19 08:49:23 -07:00
stack 1a62eaa89c HBASE-16236 Typo in javadoc of InstancePending (Hiroshi Ikeda) 2016-07-18 22:26:27 -07:00
stack c9925bcec1 HBASE-16238 It's useless to catch SESSIONEXPIRED exception and retry in RecoverableZooKeeper (Allan Yang) 2016-07-18 14:36:11 -07:00
Phil Yang a1cc2c4bfe HBASE-16144 Replication queue's lock will live forever if RS acquiring the lock has died prematurely
(cherry picked from commit a8dfd8c436)
2016-07-18 06:48:17 -05:00
Sean Busbey a0aa017ae9 Revert "Replication queue's lock will live forever if RS acquiring the lock has died prematurely"
This reverts commit a8dfd8c436.
2016-07-18 06:47:56 -05:00
tedyu eb43f0a5d0 HBASE-16172 Unify the retry logic in ScannerCallableWithReplicas and RpcRetryingCallerWithReadReplicas 2016-07-18 03:35:10 -07:00
Phil Yang a8dfd8c436 Replication queue's lock will live forever if RS acquiring the lock has died prematurely 2016-07-18 09:32:36 +08:00
Stephen Yuan Jiang f04eeecffc HBASE-14552 Procedure V2: Reimplement DispatchMergingRegionHandler (Stephen Yuan Jiang) 2016-07-15 07:06:53 -07:00
Enis Soztutar a07892558b HBASE-16095 Add priority to TableDescriptor and priority region open thread pool 2016-07-13 18:19:59 -07:00
Joseph Hwang f292048ffd HBASE-16208 Check that the row exists before attempting to remove a queue from TableBasedReplicationQueuesImpl
Signed-off-by: Elliott Clark <eclark@apache.org>
2016-07-12 14:50:07 -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
tedyu 20a99b4c06 HBASE-16144 Revert - test failure in TestMultiSlaveReplication#testMultiSlaveReplication seems to be related 2016-07-05 13:19:33 -07:00
tedyu b5cdb38dc7 HBASE-16144 Replication queue's lock will live forever if RS acquiring the lock has died prematurely (Phil Yang) 2016-07-05 07:16:12 -07:00
Yu Li 7f44dfd85f HBASE-16132 Scan does not return all the result when regionserver is busy (binlijin) 2016-07-04 21:45:04 +08:00
zhangduo 6944a17ad4 HBASE-16135 PeerClusterZnode under rs of removed peer may never be deleted 2016-07-04 19:26:27 +08:00
tedyu af9422c04a HBASE-16159 OutOfMemory exception when using AsyncRpcClient with encryption to read rpc response (Colin Ma) 2016-07-01 14:26:09 -07:00
stack 2d93444cb0 HBASE-16149 Log the underlying RPC exception in RpcRetryingCallerImpl (Jerry He) 2016-06-30 05:57:50 -07:00
Jonathan M Hsieh e1d130946b HBASE-16117 Fix Connection leak in mapred.TableOutputFormat 2016-06-29 17:18:43 -07:00
chenheng 68c1b34dbc HBASE-16040 Remove configuration "hbase.replication" 2016-06-24 10:41:35 +08:00
Joseph Hwang 2766e4a42e HBASE-16083 Fix RepliationFactory config property names to match HBase naming conventions
Signed-off-by: Elliott Clark <eclark@apache.org>
2016-06-22 12:49:45 -07:00
Joseph Hwang 152594560e HBASE-16036 Made Replication Table creation non-blocking.
All ReplicationTableBase method's that need to access the Replication Table will block until it is created though.
Also refactored ReplicationSourceManager so that abandoned queue adoption is run in the background too so that it does not block HRegionServer initialization.

Signed-off-by: Elliott Clark <eclark@apache.org>
2016-06-21 13:05:50 -07:00