Commit Graph

1520 Commits

Author SHA1 Message Date
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
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
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
Ramkrishna a9950e0001 HBASE-15783 AccessControlConstants#OP_ATTRIBUTE_ACL_STRATEGY_CELL_FIRST
not used any more. (Ram)
2016-06-21 10:51:42 +05:30
tedyu 76419df21d HBASE-16054 OutOfMemory exception when using AsyncRpcClient with encryption (Colin Ma) 2016-06-20 07:29:40 -07:00
Enis Soztutar bdb0cc8808 HBASE-15467 Remove 1.x/2.0 TableDescriptor incompatibility 2016-06-17 17:25:04 -07:00
Joseph Hwang 61ff6ced5b HBASE-16018 Refactored the ReplicationPeers interface to clear up what some methods do and move away from a ZooKeeper-specific implementation.
Also added some documentation for undocumented methods.

Signed-off-by: Elliott Clark <eclark@apache.org>
2016-06-17 13:04:21 -07:00
Joseph Hwang 2093aadec1 HBASE-15974 Create a ReplicationQueuesClientHBaseImpl
Building on HBase-15958.
Provided a ReplicationQueuesClientHBaseImpl that relies on the HBase Replication Table to track WAL queues.
Refactored out a large section of ReplicationQueuesHBaseImpl into a ReplicationTableClient class that handles Replication Table operations.

Signed-off-by: Elliott Clark <eclark@apache.org>
2016-06-15 10:43:14 -07:00
anoopsjohn 17bcf14fea HBASE-15525 OutOfMemory could occur when using BoundedByteBufferPool during RPC bursts. 2016-06-14 19:03:54 +05:30
Jurriaan Mous bd45cf3476 HBASE-16004 Update to Netty 4.1.1
Signed-off-by: stack <stack@apache.org>
2016-06-10 12:14:05 -07:00
Joseph Hwang babdedc1b0 HBASE-15958 Implement ClaimQueues on top of HBase
Building on HBase-15883.
Now implementing the claim queues procedure within an HBase table.
Also added UnitTests to test claimQueue.
Peer tracking will still be performed by ZooKeeper though.
Also modified the queueId tracking procedure so we no longer have to perform scans over the Replication Table.
This does make our queue naming schema slightly different from ReplicationQueuesZKImpl though.

Signed-off-by: Elliott Clark <eclark@apache.org>
2016-06-09 15:05:54 -07:00
Ashish Singhi 9012a0b123 HBASE-15952 Bulk load data replication is not working when RS user does not have permission on hfile-refs node 2016-06-09 18:44:29 +05:30
Matteo Bertozzi 41cc215544 HBASE-15975 logic in TestHTableDescriptor#testAddCoprocessorWithSpecStr is wrong (Huaxiang Sun) 2016-06-08 22:42:50 -07:00
Matteo Bertozzi d9463bcce0 HBASE-15989 Remove hbase.online.schema.update.enable 2016-06-08 13:09:31 -07:00
Sergey Soldatov da88b48240 HBASE-15957 RpcClientImpl.close never ends in some circumstances
Signed-off-by: Enis Soztutar <enis@apache.org>
2016-06-07 11:33:03 -07:00
Andrew Purtell 376ad0d986 HBASE-15698 Increment TimeRange not serialized to server (Ted Yu) 2016-06-06 22:17:00 -07:00
tedyu 7fd3532de6 HBASE-15803 ZooKeeperWatcher's constructor can leak a ZooKeeper instance with throwing ZooKeeperConnectionException when canCreateBaseZNode is true 2016-06-06 18:35:15 -07:00
Apekshit Sharma 15c03fd1c9 HBASE-15965
- Testing by executing a command will cover the exact path users will trigger, so its better then directly calling library functions in tests. Changing the tests to use @shell.command(:<command>, args) to execute them like it's a command coming from shell.

Norm change:
Commands should print the output user would like to see, but in the end, should also return the relevant value. This way:
- Tests can use returned value to check that functionality works
- Tests can capture stdout to assert particular kind of output user should see.
- We do not print the return value in interactive mode and keep the output clean. See Shell.command() function.

Bugs found due to this change:
- Uncovered bug in major_compact.rb with this approach. It was calling admin.majorCompact() which doesn't exist but our tests didn't catch it since they directly tested admin.major_compact()
- Enabled TestReplicationShell. If it's bad, flaky infra will take care of it.

Change-Id: I5d8af16bf477a79a2f526a5bf11c245b02b7d276
2016-06-06 17:50:22 -07:00
Ramkrishna b21c56e795 HBASE-15174 Client Public API should not have PB objects in 2.0 (Ram) 2016-06-06 10:11:38 +05:30
Joseph Hwang 21e98271c3 HBASE-15883 Adding WAL files and tracking offsets in HBase.
Implemented ReplicationQueuesHBaseImpl that tracks WAL offsets and replication queues in an HBase table.
Only wrote the basic tracking methods, have not implemented claimQueue() or HFileRef methods yet.
Wrote a basic unit test for ReplicationQueueHBaseImpl that tests the implemented functions on a single Region Server

Signed-off-by: Elliott Clark <elliott@fb.com>
Signed-off-by: Elliott Clark <eclark@apache.org>
2016-06-03 15:23:10 -07:00
Ashish Singhi 0cbce07626 HBASE-15888 Extend HBASE-12769 for bulk load data replication 2016-06-03 18:42:00 +05:30
Yu Li 53eb27bb60 HBASE-15931 Add log for long-running tasks in AsyncProcess 2016-06-02 12:00:42 +08:00
tedyu cbb95cd3a9 HBASE-15932 Shell test fails due to uninitialized constant 2016-06-01 10:35:00 -07:00
Jurriaan Mous a1f0c1cbb3 HBASE-15875 Remove HTable references and HTableInterface
Signed-off-by: stack <stack@apache.org>
2016-05-30 19:56:54 -07:00
Jurriaan Mous cdd532da8a HBASE-15610 Remove deprecated HConnection for 2.0 thus removing all PB references for 2.0
Signed-off-by: stack <stack@apache.org>
2016-05-29 07:50:55 -07:00
Sean Mackrory f4470af95d HBASE-15891. Closeable resources potentially not getting closed if exception is thrown.
Signed-off-by: stack <stack@apache.org>
2016-05-28 21:32:22 -07:00
Sean Mackrory 3b6e6e6c25 HBASE-15889. String case conversions are locale-sensitive, used without locale
Signed-off-by: Sean Busbey <busbey@apache.org>
2016-05-28 10:41:31 -07:00
Gary Helmling da0d74cd27 HBASE-15830 SASL encryption doesn't work with AsyncRpcChannelImpl (Colin Ma) 2016-05-26 21:58:27 -07:00
Andrew Purtell fdaf3be84f HBASE-15854 Log the cause of SASL connection failures (Robert Yokota) 2016-05-26 14:16:20 -07:00
Mikhail Antonov 1c30ae68ec HBASE-15880 RpcClientImpl#tracedWriteRequest incorrectly closes HTrace span 2016-05-23 12:44:48 -07:00
tedyu ae42c65cfd HBASE-15802 ConnectionUtils should use ThreadLocalRandom instead of Random (Matt Warhaftig) 2016-05-21 21:15:10 -07:00
Jerry He 56e4b85d06 HBASE-14818 user_permission does not list namespace permissions (li xiang) 2016-05-21 20:06:05 -07:00
Gary Helmling b1bf622e69 HBASE-15856 Addendum Fix UnknownHostException import in MetaTableLocator 2016-05-20 20:44:56 -07:00
stack 8dc0ae6fb3 HBASE-15863 Typo in Put.java class documentation (Tamer Soliman) 2016-05-20 11:51:36 -07:00
Gary Helmling 4793988aef HBASE-15856 Don't cache unresolved addresses for connections 2016-05-20 09:36:11 -07:00
eshcar a27504c701 HBASE-14920: Compacting memstore
Signed-off-by: stack <stack@apache.org>
2016-05-20 03:41:43 -07:00
Matteo Bertozzi 5ac54e6abb HBASE-15843 Replace RegionState.getRegionInTransition() Map with a Set 2016-05-18 12:48:26 -07:00
Phil Yang 3bd9220f0c HBASE-15593 Time limit of scanning should be offered by client
Signed-off-by: zhangduo <zhangduo@apache.org>
2016-05-18 19:13:15 +08:00
Ramkrishna 7b5d5394c0 HBASE-15784 Misuse core/maxPoolSize of LinkedBlockingQueue in
ThreadPoolExecutor (Jingcheng Du)
2016-05-18 12:40:43 +05:30
Elliott Clark 9269b8199e HBASE-15840 WAL.proto compilation broken for cpp 2016-05-17 12:04:14 -07:00
tedyu 838c306c0a HBASE-15769 Perform validation on cluster key for add_peer (Matt Warhaftig) 2016-05-17 11:01:26 -07:00
Sean Busbey e0aff10901 HBASE-15780 Make AuthUtil public and rely on it for talking to secure HBase.
Signed-off-by: Gary Helmling <garyh@apache.org>
Signed-off-by: Mikhail Antonov <antonov@apache.org>
Signed-off-by: stack <stack@apache.org>
2016-05-16 00:50:14 -05:00
stack c47511baa7 HBASE-15828 fix extant findbug NM_SAME_SIMPLE_NAME_AS_INTERFACE in Future 2016-05-15 21:11:29 -07:00
Mikhail Antonov 2482062d34 HBASE-15615 Wrong sleep time when RegionServerCallable need retry (Guanghao Zhang) 2016-05-15 20:37:26 -07:00
stack 6904430a3d HBASE-15811 Batch Get after batch Put does not fetch all Cells We were not waiting on all executors in a batch to complete. The test for no-more-executors was damaged by the 0.99/0.98.4 fix "HBASE-11403 Fix race conditions around Object#notify"
It added this in AsyncProcess#waitForMaximumCurrentTasks:

synchronized (this.tasksInProgress) {
+          if (tasksInProgress.get() != oldInProgress) break;
           this.tasksInProgress.wait(100);

which added a break out of our waiting loop if any change in
count of tasks; it seems that what was wanted was instead to
avoid the wait if there was movement in the count of completed
task.

Reformats waitForMaximumCurrentTasks so it is testable. Adds
test that we indeed wait on the specified parameter.
2016-05-13 17:51:27 -07:00
Jurriaan Mous a11091c49c HBASE-15798 Add Async RpcChannels to all RpcClients
Signed-off-by: stack <stack@apache.org>
2016-05-10 07:44:51 -07:00
Jurriaan Mous 9d17e3d22a HBASE-15797 TestIPCUtil fails after HBASE-15795
Signed-off-by: stack <stack@apache.org>
2016-05-09 17:04:58 -07:00
Ramkrishna 97ad33c691 HBASE-15609 Remove PB references from Result, DoubleColumnInterpreter and
any such public facing class for 2.0 (Ram)
2016-05-09 14:56:00 +05:30
Jurriaan Mous 9ee0cbb995 HBASE-15796 TestMetaCache fails after HBASE-15745
Signed-off-by: stack <stack@apache.org>
2016-05-07 15:29:07 -07:00
Jurriaan Mous fa033b6a08 HBASE-15793 Port over AsyncCall improvements
Signed-off-by: stack <stack@apache.org>
2016-05-07 10:38:38 -07:00
Jurriaan Mous ac31ceb835 HBASE-15794 Fix Findbugs instanceof always true issue in
MultiServerCallable

Signed-off-by: stack <stack@apache.org>
2016-05-07 10:10:23 -07:00
Jurriaan Mous e71ae601f7 HBASE-15795 Cleanup all classes in package org.apache.hadoop.hbase.ipc
for code style

Signed-off-by: stack <stack@apache.org>
2016-05-07 09:55:07 -07:00
Jurriaan Mous 56358a0fd3 HBASE-15745 Refactor RPC classes to better accept async changes
Signed-off-by: stack <stack@apache.org>
2016-05-06 13:43:45 -07:00
Ashish Singhi 34e9a6ff30 HBASE-15669 HFile size is not considered correctly in a replication request 2016-05-06 17:26:17 +05:30
Ramkrishna bec81b1977 HBASE-15608 Remove PB references from SnapShot related Exceptions (ram) 2016-05-06 17:06:25 +05:30
Alex Moundalexis 0bf065a5d5 HBASE-15768 fix capitalization of ZooKeeper usage
Signed-off-by: Sean Busbey <busbey@apache.org>
2016-05-05 15:35:44 -05:00
tedyu 8b0ce77942 HBASE-15292 Refined ZooKeeperWatcher to prevent ZooKeeper's callback while construction (Hiroshi Ikeda) 2016-05-05 11:14:32 -07:00
Gary Helmling d23d600d76 HBASE-15741 Provide backward compatibility for HBase coprocessor service names 2016-05-04 12:09:57 -07:00
Ramkrishna c06a976a98 HBASE-15607 Remove PB references from Admin for 2.0 (Ram) 2016-05-03 10:51:46 +05:30
Mikhail Antonov 58c4c3d174 HBASE-15703 Deadline scheduler needs to return to the client info about skipped calls, not just drop them 2016-05-02 15:23:07 -07:00
Jurriaan Mous 15631a76f5 HBASE-15744 Port over small format/text improvements from HBASE-13784
(Jurriaan Mous)

Signed-off-by: stack <stack@apache.org>
2016-05-01 19:48:43 -07:00
chenheng ccd8888b4b Revert "HBASE-15278 AsyncRPCClient hangs if Connection closes before RPC call response"
This reverts commit 01c0448ccd.
2016-04-30 11:37:05 +08:00
chenheng 01c0448ccd HBASE-15278 AsyncRPCClient hangs if Connection closes before RPC call response 2016-04-30 09:27:32 +08:00
Yu Li d8e032279f HBASE-15711 Add client side property to allow logging details for batch errors 2016-04-29 10:14:27 +08:00
tedyu 9343ef438f HBASE-15676 FuzzyRowFilter fails and matches all the rows in the table if the mask consists of all 0s (Matt Warhaftig) 2016-04-27 21:00:11 -07:00
Gary Helmling ce318a2906 HBASE-15658 Avoid excess meta cache clearing for RegionServerCallable 2016-04-26 22:54:13 -07:00
Phil Yang 53d7316075 HBASE-15645 hbase.rpc.timeout is not used in operations of HTable
Signed-off-by: stack <stack@apache.org>
2016-04-26 10:51:29 -07:00
stack 4bdd47c52c HBASE-15710 Include issue servers information in RetriesExhaustedWithDetailsException message (Yu Li) 2016-04-26 09:15:02 -07:00
chenheng 03f3c392a3 HBASE-15674 HRegionLocator#getAllRegionLocations should put the results in cache 2016-04-21 14:19:39 +08:00
chenheng a9f1c4a871 HBASE-15406 Split / merge switch left disabled after early termination of hbck 2016-04-15 14:09:52 +08:00
Vasudevan a395922ad5 HBASE-15605 Remove PB references from HCD and HTD for 2.0 (Ram) 2016-04-11 14:12:07 +05:30
tedyu e0f31ba6e6 HBASE-15507 Online modification of enabled ReplicationPeerConfig (Geoffrey Jacoby) 2016-04-08 21:26:31 -07:00
Samir Ahmic d393603dea HBASE-15606 Limit creating zk connection in HBaseAdmin#getCompactionState() only to case when 'hbase:meta' is checked.
Signed-off-by: stack <stack@apache.org>
2016-04-07 14:25:49 -07:00
Enis Soztutar 7e399883f6 HBASE-15505 ReplicationPeerConfig should be builder-style (Gabor Liptak) 2016-04-05 11:44:05 -07:00
Stephen Yuan Jiang e1d5c3d269 HBASE-15521 Procedure V2 - RestoreSnapshot and CloneSnapshot (Stephen Yuan Jiang) 2016-03-31 21:49:13 -07:00
chenheng 7f39baf0f4 HBASE-11393 Replication TableCfs should be a PB object rather than a string 2016-03-29 10:25:29 +08:00
Enis Soztutar 0520097611 HBASE-15295 MutateTableAccess.multiMutate() does not get high priority causing a deadlock 2016-03-28 17:56:32 -07:00
Mikhail Antonov db3ba652f8 HBASE-15524 Fix NPE in client-side metrics 2016-03-23 21:23:54 -07:00
zhangduo fd5c0934b6 HBASE-15520 Fix broken TestAsyncIPC 2016-03-24 10:46:44 +08:00
Elliott Clark 925c185969 HBASE-15475 Allow TimestampsFilter to provide a seek hint
Summary:
Allow TestTimestampFilterSeekHint to provide a seek next hint.
This can be incorrect as it might skip deletes. However it can
make things much much faster.

Test Plan: Added a unit test.

Differential Revision: https://reviews.facebook.net/D55617
2016-03-23 18:56:52 -07:00
Misty Stanley-Jones b6e1f63074 HBASE-15447 Improve javadocs description for Delete methods <Wellington Chevreuil> 2016-03-22 12:56:30 -07:00
tedyu dc6cd0bb74 HBASE-15479 No more garbage or beware of autoboxing (Vladimir Rodionov) 2016-03-19 17:22:53 -07:00
tedyu fbf58f330b HBASE-15325 ResultScanner allowing partial result will miss the rest of the row if the region is moved between two rpc requests (Phil Yang) 2016-03-17 11:03:29 -07:00
Mikhail Antonov a2c99b133f HBASE-15390 Unnecessary MetaCache evictions cause elevated number of requests to meta (ADDENDUM) 2016-03-17 01:08:36 -07:00
Elliott Clark ecec35ae4e HBASE-15441 Fix WAL splitting when region has moved multiple times
Summary:
Currently WAL splitting is broken when a region has been opened multiple times in recent minutes.

Region open and region close write event markers to the wal. These markers should have the sequence id in them. However it is currently getting 1. That means that if a region has moved multiple times in the last few mins then multiple split log workers will try and create the recovered edits file for sequence id 1. One of the workers will fail and on failing they will delete the recovered edits. Causing all split wal attempts to fail.

We need to:

It appears that the close event with a sequence id of one is coming from region warm up.

This patch fixes that by making sure the close on warm up doesn't happen. Also splitting will ignore any of the events that are already in the logs.

Test Plan: Unit tests pass

Differential Revision: https://reviews.facebook.net/D55557
2016-03-16 16:26:09 -07:00
Mikhail Antonov 3adcc750e3 HBASE-15390 Unnecessary MetaCache evictions cause elevated number of requests to meta 2016-03-16 16:22:36 -07:00
Enis Soztutar ca816f0780 HBASE-6721 RegionServer Group based Assignment (Francis Liu) 2016-03-14 18:28:50 -07:00
anoopsjohn eea8b38dfa HBASE-15180 Reduce garbage created while reading Cells from Codec Decoder. 2016-03-11 13:58:41 +05:30
anoopsjohn 6628d2df11 HBASE-15322 Operations using Unsafe path broken for platforms not having sun.misc.Unsafe. 2016-03-11 09:37:00 +05:30
tedyu ad9b91a904 HBASE-15378 Scanner cannot handle heartbeat message with no results (Phil Yang) 2016-03-09 09:28:54 -08:00
Mikhail Antonov 46cc3d4972 HBASE-15137 CallTimeoutException and CallQueueTooBigException should trigger PFFE 2016-03-07 20:54:54 -08:00
tedyu ed977fd125 HBASE-15243 Utilize the lowest seek value when all Filters in MUST_PASS_ONE FilterList return SEEK_NEXT_USING_HINT 2016-03-07 16:15:59 -08:00
tedyu dfc650a953 HBASE-15243 Revert due to compilation error - master branch change makes the patch stale 2016-03-07 15:59:29 -08:00
tedyu 05c1309b3c HBASE-15243 Utilize the lowest seek value when all Filters in MUST_PASS_ONE FilterList return SEEK_NEXT_USING_HINT 2016-03-07 15:41:06 -08:00
Jesse Yates ef712df944 HBASE-14703 HTable.mutateRow does not collect stats (Heng Chen) 2016-03-05 11:01:45 -08:00
tedyu d083e4f29f HBASE-15393 Enable table replication command will fail when parent znode is not default in peer cluster (Ashish Singhi) 2016-03-05 06:28:09 -08:00
Ashu Pachauri 27cf0c8c36 HBASE-15354 Same criteria to clear metacache across operations (Ashu Pachauri)
Signed-off-by: Mikhail Antonov <antonov@apache.org>
2016-03-04 17:55:35 -08:00
tedyu 664575598e HBASE-15397 Create bulk load replication znode(hfile-refs) in ZK replication queue by default (Ashish Singhi) 2016-03-04 13:43:25 -08:00
Jonathan M Hsieh f658f3ef83 HBASE-15356 Remove unused imports (Youngjoon Kim) 2016-03-03 11:42:38 -08:00
chenheng 99955a3240 HBASE-15128 Disable region splits and merges switch in master 2016-02-27 08:36:59 +08:00
chenheng bf4fcc30c6 Revert "HBASE-15128 Disable region splits and merges switch in master"
This reverts commit 24d481c580.
2016-02-26 08:52:12 +08:00
chenheng 24d481c580 HBASE-15128 Disable region splits and merges switch in master 2016-02-26 08:11:16 +08:00
Josh Elser a8073c4a98 HBASE-15232 Handle region location cache mgmt in AsyncProcess for multi()'s
Further investigation after HBASE-15221 lead to some findings that
AsyncProcess should have been managing the contents of the region
location cache, appropriately clearing it when necessary (e.g. an
RPC to a server fails because the server doesn't host that region)

For multi() RPCs, the tableName argument is null since there is no
single table that the updates are destined to. This inadvertently
caused the existing region location cache updates to fail on 1.x
branches. AsyncProcess needs to handle when tableName is null
and perform the necessary cache evictions.

As such, much of the new retry logic in HTableMultiplexer is
unnecessary and is removed with this commit. Getters which were
added as a part of testing were left since that are mostly
harmless and should contain no negative impact.

Signed-off-by: stack <stack@apache.org>
2016-02-22 22:03:14 -08:00
anoopsjohn 2d66cd86d0 HBASE-15247 InclusiveStopFilter does not respect reverse Filter property. (Amal Joshy) 2016-02-23 09:21:37 +05:30
stack 4b1acead42 HBASE-15285 Forward-port respect for isReturnResult from HBASE-15095 2016-02-17 19:26:17 -08:00
anoopsjohn 12982d1957 HBASE-15198 RPC client not using Codec and CellBlock for puts by default-addendum. 2016-02-12 07:37:45 +05:30
anoopsjohn 29a192ef3c HBASE-15198 RPC client not using Codec and CellBlock for puts by default. 2016-02-11 09:51:11 +05:30
tedyu 7bb68b9031 HBASE-15231 Make TableState.State private (Misty Stanley-Jones) 2016-02-08 15:21:18 -08:00
Josh Elser dfd8a31a13 HBASE-15221 Reload the cache on re-tried puts in HTableMultiplexer and adds a close() method to HTableMultiplexer
When a Put fails due to a NotServingRegionException, the cached location
of that Region is never cleared. Thus, subsequent calls to resubmit
the Put will fail in the same way as the original, never determining
the new location of the Region.

If the Connection is not closed by the user before the Multiplexer
is discarded, it will leak resources and could cause resource
issues.

Signed-off-by: Sean Busbey <busbey@cloudera.com>
2016-02-08 00:04:28 -06:00
anoopsjohn 7239056c78 HBASE-15214 Valid mutate Ops fail with RPC Codec in use and region moves across. 2016-02-06 02:40:49 +05:30
chenheng 8f20bc748d HBASE-15197 Expose filtered read requests metric to metrics framework and Web UI (Eungsop Yoo) 2016-02-05 10:57:14 +08:00
Andrew Purtell b80325fb1b Amend HBASE-15200 ZooKeeper znode ACL checks should only compare the shortname
Fixes for newly introduced FindBugs warnings
2016-02-04 17:33:32 -08:00
Enis Soztutar a69272efe1 HBASE-15177 Reduce garbage created under high load 2016-02-04 13:27:00 -08:00
stack d5d26f0804 Fixup on the hbasecon banner image.. add date and location 2016-02-04 11:44:16 -08:00
Andrew Purtell 6256ce4e63 HBASE-15200 ZooKeeper znode ACL checks should only compare the shortname 2016-02-03 10:43:20 -08:00
Enis Soztutar 2f5767376f HBASE-15129 Set default value for hbase.fs.tmp.dir rather than fully depend on hbase-default.xml (Yu Li) 2016-02-02 17:10:19 -08:00
stack ed46591f30 HBASE-15196 HBASE-15158 Preamble 2 of 2:Add Increment tests 2016-02-02 11:27:03 -08:00
stack 2cc48e039d HBASE-15158 HBASE-15158 Preamble 1 of 2: fix findbugs, add javadoc, change Region#getReadpoint to #getReadPoint, and some util 2016-01-31 20:21:48 -08:00
tedyu 1ee07688c8 HBASE-15173 Execute mergeRegions RPC call as the request user 2016-01-28 09:53:24 -08:00
Elliott Clark 138b754671 HBASE-15146 Don't block on Reader threads queueing to a scheduler queue 2016-01-28 07:58:43 -05:00
Devaraj Das 4681827d63 HBASE-14963. Remove Guava dependency from HBase client code 2016-01-22 13:26:54 -08:00
Mikhail Antonov 4bf6f8379d HBASE-15139 Connection manager doesn't pass client metrics to RpcClient 2016-01-20 14:17:01 -08:00
tedyu eb17f74b9e HBASE-15073 Revert due to different opinion on usefulness 2016-01-18 17:51:21 -08:00
stack 76bce77326 HBASE-15115 Fix findbugs complaints in hbase-client 2016-01-15 10:25:49 -08:00
stack 300fe5e6bf Revert "v1"
Bad commit message; revert

This reverts commit c516968b8c.
2016-01-15 10:24:58 -08:00
stack c516968b8c v1 2016-01-15 10:15:05 -08:00
tedyu 4ac8d4ce61 HBASE-14865 Support passing multiple QOPs to SaslClient/Server via hbase.rpc.protection (Appy) 2016-01-14 16:39:52 -08:00
ramkrishna 28c2b18d30 HBASE-15027 Refactor the way the CompactedHFileDischarger threads are
created (Ram)
2016-01-08 11:18:39 +05:30
tedyu d65978fceb HBASE-15073 Finer grained control over normalization actions for RegionNormalizer 2016-01-06 17:25:41 -08:00
anoopsjohn a9b671b31f HBASE-12593 Tags to work with ByteBuffer. 2016-01-06 21:28:06 +05:30
stack 46303dfd75 HBASE-14888 ClusterSchema: Add Namespace Operations 2016-01-05 14:35:27 -08:00
tedyu 00656688f7 HBASE-14987 Compaction marker whose region name doesn't match current region's needs to be handled 2016-01-04 07:10:10 -08:00
stack a82f7fc94a Revert "HBASE-14888 ClusterSchema: Add Namespace Operations"
This reverts commit c5f3d17ae3.
2016-01-03 07:15:18 -08:00
stack c5f3d17ae3 HBASE-14888 ClusterSchema: Add Namespace Operations 2016-01-02 16:16:56 -08:00
Ashish Singhi 413d663f92 HBASE-15018 Inconsistent way of handling TimeoutException in the rpc client implementations
Signed-off-by: Sean Busbey <busbey@apache.org>
2015-12-29 20:25:47 -06:00
tedyu a1a19d9405 HBASE-14717 enable_table_replication command should only create specified table for a peer cluster (Ashish) 2015-12-24 11:07:49 -08:00
anoopsjohn 6fc2596ab3 HBASE-14940 Make our unsafe based ops more safe. 2015-12-24 07:54:13 +05:30
stack 04de427e57 Revert "HBASE-15018 Inconsistent way of handling TimeoutException in the rpc client implemenations (Ashish Singhi)"
This reverts commit e00a04df10.
2015-12-23 15:31:10 -08:00
stack e00a04df10 HBASE-15018 Inconsistent way of handling TimeoutException in the rpc client implemenations (Ashish Singhi) 2015-12-23 07:29:18 -08:00
chenheng f018c371b5 HBASE-14654 Reenable TestMultiParallel#testActiveThreadsCount 2015-12-22 11:33:25 +08:00
Lars Hofhansl 86a417eead HBASE-14822 Renewing leases of scanners doesn't work. 2015-12-19 09:55:03 -08:00
anoopsjohn 408666a06d HBASE-13158 When client supports CellBlock, return the result Cells as controller payload for get(Get) API also. 2015-12-18 09:50:53 +05:30
anoopsjohn cf458d3023 HBASE-14999 Remove ref to org.mortbay.log.Log. 2015-12-17 18:01:16 +05:30
Mikhail Antonov abe30b52a8 HBASE-14534 Bump yammer/coda/dropwizard metrics dependency version 2015-12-15 12:11:27 -08:00
stack 22b95aebcd HBASE-14946 Don't allow multi's to over run the max result size. 2015-12-10 21:25:21 -08:00
Enis Soztutar cff664c5e2 HBASE-14960 Fallback to using default RPCControllerFactory if class cannot be loaded 2015-12-10 19:11:57 -08:00
Elliott Clark 48e217a7db HBASE-14946 Don't allow multi's to over run the max result size.
Summary:
* Add VersionInfoUtil to determine if a client has a specified version or better
* Add an exception type to say that the response should be chunked
* Add on client knowledge of retry exceptions
* Add on metrics for how often this happens

Test Plan: Added a unit test

Differential Revision: https://reviews.facebook.net/D51771
2015-12-10 18:10:32 -08:00
stack bebcc09fb3 HBASE-14769 Remove unused functions and duplicate javadocs from HBaseAdmin 2015-12-10 15:02:21 -08:00
Nate Edel 9511150bd6 HBASE-14901 Remove duplicate code to create/manage encryption keys
Signed-off-by: Gary Helmling <garyh@apache.org>
2015-12-10 14:38:43 -08:00
ramkrishna 26ac60b03f HBASE-13153 Bulk Loaded HFile Replication (Ashish Singhi) 2015-12-10 13:07:46 +05:30
Gary Helmling c1e0fcc26d HBASE-14866 VerifyReplication and ReplicationAdmin should use full peer configuration for peer connection 2015-12-09 15:52:27 -08:00
stack 92e178df28 Revert "HBASE-14769 Removing unused functions from HBaseAdmin. Removing redundant javadocs from HBaseAdmin as they will be automatically inhertited from Admin.java. (Apekshit)"
Reverting. The conversation on issues to do with this patch was not done (Appy brought it to my attention).

This reverts commit 6adce67572.
2015-12-01 11:30:39 -08:00
Apekshit(Appy) Sharma 6adce67572 HBASE-14769 Removing unused functions from HBaseAdmin. Removing redundant javadocs from HBaseAdmin as they will be automatically inhertited from Admin.java. (Apekshit)
Signed-off-by: stack <stack@apache.org>
2015-11-30 20:44:11 -08:00
Apekshit 3bac31b2a4 HBASE-14890 Fix broken checkstyle tool. Some javadocs had parsing errors because of wrongly formatted HTML tags. (Apekshit)
Signed-off-by: stack <stack@apache.org>
2015-11-28 21:57:52 -08:00
tedyu 2317ec583d HBASE-14894 Fix misspellings of threshold in log4j.properties files for tests (Youngjoon Kim) 2015-11-28 10:08:38 -08:00
anoopsjohn daba867734 HBASE-13347 Deprecate FirstKeyValueMatchingQualifiersFilter. (Abhishek) 2015-11-24 09:50:56 +05:30
tedyu 9a91f5ac81 HBASE-14737 Clear cachedMaxVersions when HColumnDescriptor#setValue(VERSIONS, value) is called (Pankaj Kumar) 2015-11-23 20:13:00 -08:00
chenheng ebe5801e00 HBASE-14782 FuzzyRowFilter skips valid rows (Vladimir Rodionov) 2015-11-19 11:28:18 +08:00
tedyu d738aade2e HBASE-14824 HBaseAdmin.mergeRegions should recognize both full region names and encoded region names (Eungsop Yoo) 2015-11-18 14:24:47 -08:00
Elliott Clark d6fdf92f9e HBASE-14812 Fix ResultBoundedCompletionService deadlock 2015-11-17 14:41:35 -08:00
Elliott Clark a591df1073 HBASE-14708 Use copy on write Map for region location cache
Summary:
Create and use a copy on write map for region location.

  - Create a copy on write map backed by a sorted array.
  - Create a test for both comparing each with a jdk provided map.
  - Change MetaCache to use the new map.

Test Plan:
  - org.apache.hadoop.hbase.client.TestFromClientSide
  - TestHCM

Differential Revision: https://reviews.facebook.net/D49545
2015-11-17 10:52:43 -08:00
tedyu 789f8a5a70 HBASE-14498 Revert for on-going review 2015-11-12 12:57:23 -08:00
stack 290ecbe829 HBASE-14355 Scan different TimeRange for each column family (Churro Morales) 2015-11-12 10:54:16 -10:00
tedyu b677f2e65d HBASE-14498 Master stuck in infinite loop when all Zookeeper servers are unreachable (Pankaj Kumar) 2015-11-12 07:21:19 -08:00
stack 32de06f663 HBASE-14787 Remove obsolete ConnectionImplementation.refCount (Appy) 2015-11-09 17:08:17 -10:00
chenheng 086bacd12d HBASE-14693 Add client-side metrics for received pushback signals
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2015-11-09 18:03:30 -08:00
Apekshit(Appy) Sharma 08963189a2 HBASE-14767 - Remove deprecated functions from HBaseAdmin Deprecated in HBASE-12083 (1.0.0, 2.0.0, 0.99.2) - HBaseAdmin(Configuration)
Deprecated in HBASE-10479 (0.99.0, hbase-10070)
  - HBaseAdmin(Connection)

  Deprecated in HBASE-11826 (0.99.0, 1.0.0, 2.0.0)
  - flush()
  - compact()
  - majorCompact()
  - split()
  - getCompactionState()

- Changes many declarations from HBaseAdmin to Admin
(Apekshit)

Signed-off-by: stack <stack@apache.org>
2015-11-06 16:23:55 -10:00
tedyu cfc5348b5e HBASE-14758 Add UT case for unchecked error/exception thrown in AsyncProcess#sendMultiAction (Yu Li) 2015-11-04 07:20:59 -08:00
stack ceddec9141 HBASE-14725 Vet categorization of tests so they for sure go into the right small/medium/large buckets 2015-11-03 20:47:20 -08:00
chenheng 6871724104 HBASE-12986 Compaction pressure based client pushback
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2015-11-03 18:32:08 -08:00
stack e4bf77e2de HBASE-14754 TestFastFailWithoutTestUtil failing on trunk now in #testPreemptiveFastFailException50Times 2015-11-03 16:20:55 -08:00
Jesse Yates 1b8b612b8b HBASE-14715 Add javadocs to DelegatingRetryingCallable 2015-11-02 16:20:55 -08:00
stack 9630fec2d5 Revert "HBASE-14725 Vet categorization of tests so they for sure go into the right small/medium/large buckets"
Revert. Seems to have destabilized the build

This reverts commit 6dbb5a8052.
2015-11-02 08:17:41 -08:00
stack 6dbb5a8052 HBASE-14725 Vet categorization of tests so they for sure go into the right small/medium/large buckets 2015-11-01 22:26:43 -08:00
Jonathan M Hsieh 4c25549e9f HBASE-14711 Remove or annotate deprecated methods in HRegionInfo 2015-11-01 04:29:51 -08:00
Elliott Clark ec651bfc7b HBASE-14687 Un-synchronize BufferedMutator
Summary:
Use concurrent collections and atomic longs to keep track of edits in buffered mutator.
This keeps buffered mutator as thread safe but it means that shared buffered mutators are not contending on thread locking.

Test Plan: Unit Tests.

Differential Revision: https://reviews.facebook.net/D49467
2015-10-30 13:27:25 -07:00
Matteo Bertozzi 4b91a6425e HBASE-14714 some cleanup to snapshot code 2015-10-29 13:48:59 -07:00
Jonathan M Hsieh 094d65e6f5 HBASE-14673 Exorcise deprecated Delete#delete* api 2015-10-29 11:15:34 -07:00
Jonathan M Hsieh de9555cec4 HBASE-14675 Exorcise deprecated Put#add(...) and replace with Put#addColumn(...) 2015-10-29 11:15:31 -07:00
tedyu 210c3dd937 HBASE-12769 Replication fails to delete all corresponding zk nodes when peer is removed (Jianwei Cui) 2015-10-27 19:40:40 -07:00
Misty Stanley-Jones e24d03b10c HBASE-14695 Fix some easy HTML warnings and bad links 2015-10-28 12:12:40 +10:00
Enis Soztutar 0e6dd3257b HBASE-14425 In Secure Zookeeper cluster superuser will not have sufficient permission if multiple values are configured in hbase.superuser (Pankaj Kumar) 2015-10-27 16:56:20 -07:00
tedyu f91546f2e6 HBASE-14696 Support setting allowPartialResults in mapreduce Mappers 2015-10-27 07:57:32 -07:00
tedyu a321da2039 HBASE-14694 Scan copy constructor doesn't handle allowPartialResults 2015-10-27 07:51:04 -07:00
Elliott Clark caae3b2e5f HBASE-14683 Fix Batching in buffered mutator is awful when adding lists of mutations.
Summary: Send the list of mutations to AsyncProcess only after done adding the list otherwise there's a lot of contention

Test Plan: UnitTests.

Differential Revision: https://reviews.facebook.net/D49251
2015-10-24 10:05:39 -07:00
Ashish Singhi 467bc098a9 HBASE-13538 Procedure v2 - client add/delete/modify column family sync (incompatible with branch-1.x)
Signed-off-by: Matteo Bertozzi <matteo.bertozzi@cloudera.com>
2015-10-22 13:12:35 -07:00
Matteo Bertozzi 36a196722c HBASE-14669 remove unused import and fix javadoc 2015-10-22 09:25:26 -07:00
Misty Stanley-Jones 2996355e94 HBASE-14603 Lots of work on the POM to enhance Javadocs, Xrefs
* We now have apidocs, devapidocs, testapidocs, and testdevapidocs
* When using reportSets, the Javadoc plugin ignores the plugin configuration,
  so I propagated it to the individual reportSet configuration blocks.
* I was able to remove some of the logic that moved / copied things around
  in post-site.
* We now have xref and xref-test (these are superfluous but something needs them
  so I left them)
* Added source to Javadocs -- you can click a method or property to browse its source.
  More user-friendly than xref maybe.
* You can now get the whole site to build by doing 'mvn clean site site:stage' and
  it takes about 10 minutes.
2015-10-22 19:12:42 +10:00
Misty Stanley-Jones 74d5232065 Revert "Lots of work on the POM to enhance Javadocs, Xrefs"
This reverts commit aa78ebbd5a.
2015-10-22 19:11:40 +10:00
Misty Stanley-Jones aa78ebbd5a Lots of work on the POM to enhance Javadocs, Xrefs
* We now have apidocs, devapidocs, testapidocs, and testdevapidocs
* When using reportSets, the Javadoc plugin ignores the plugin configuration,
  so I propagated it to the individual reportSet configuration blocks.
* I was able to remove some of the logic that moved / copied things around
  in post-site.
* We now have xref and xref-test (these are superfluous but something needs them
  so I left them)
* Added source to Javadocs -- you can click a method or property to browse its source.
  More user-friendly than xref maybe.
* You can now get the whole site to build by doing 'mvn clean site site:stage' and
  it takes about 10 minutes.
2015-10-22 18:29:08 +10:00
tedyu 8e6316a80c HBASE-14458 AsyncRpcClient#createRpcChannel() should check and remove dead channel before creating new one to same server (Samir Ahmic) 2015-10-18 20:49:31 -07:00
Enis Soztutar 6076ed2a12 HBASE-14474 Addendum closes connection in writeRequest() outside synchronized block
This reverts commit 414a7b18b1.
2015-10-16 11:54:22 -07:00
Nicolas Liochon e7defd7d9a HBASE-14521 Unify the semantic of hbase.client.retries.number (Yu Li) 2015-10-15 10:42:40 +02:00
tedyu 8c69b0f751 HBASE-14594 Use new DNS API introduced in HADOOP-12437 (Josh Elser) 2015-10-14 14:17:36 -07:00
stack 940e5404df HBASE-14598 ByteBufferOutputStream grows its HeapByteBuffer beyond JVM limitations (Ian Friedman) 2015-10-14 13:13:01 -07:00
stack b9639d1e82 HBASE-14590 Shorten ByteBufferedCell#getXXXPositionInByteBuffer method name (Anoop Sam John) 2015-10-12 12:33:28 -07:00
stack e37e72c160 Revert "HBASE-14583 Enabled client-side metrics by default"
Causes TestShell to hang. Reverting for now till we figure why.

This reverts commit c7efd14726.
2015-10-10 13:18:48 -07:00
anoopsjohn 4969879df5 HBASE-14366 NPE in case visibility expression is not present in labels table during importtsv run. (Bhupendra) 2015-10-10 12:04:47 +05:30
stack 445dbd8a0e HBASE-14517 Show regionserver's version in master status page (Liu Shaohui) 2015-10-09 15:06:39 -07:00
Nick Dimiduk c7efd14726 HBASE-14583 Enabled client-side metrics by default 2015-10-09 10:17:56 -07:00
Nick Dimiduk 7e30436e3f HBASE-12911 Client-side metrics 2015-10-07 17:01:56 -07:00
Elliott Clark ceafa09d3c HBASE-14544 Allow HConnectionImpl to not refresh the dns on errors 2015-10-05 09:35:40 -07:00
Mikhail Antonov 19045a5ea7 HBASE-14367 Add normalization support to shell 2015-10-04 00:29:39 -07:00
smaddineni 44b8809726 HBASE-13770 Programmatic JAAS configuration option for secure zookeeper may be broken
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2015-10-02 17:50:54 -07:00
Matteo Bertozzi 2e8575bb0f HBASE-14485 ConnectionImplementation leaks on construction failure 2015-10-01 12:56:37 -07:00
stack e0929bbc5a HBASE-14510 Fix coprocessor handling of duplicate classes (Yerui Sun) 2015-09-29 15:01:10 -07:00
chenheng 02699fe967 HBASE-14227 Fold special cased MOB APIs into existing APIs
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2015-09-25 18:28:13 -07:00
tedyu 414a7b18b1 HBASE-14474 Revert addendum 2015-09-25 15:48:08 -07:00
tedyu dc2aa7e513 HBASE-14474 Addendum closes connection in writeRequest() outside synchronized block 2015-09-25 15:18:21 -07:00
Enis Soztutar 32f49fa7fc HBASE-14474 DeadLock in RpcClientImpl.Connection.close() 2015-09-25 11:04:53 -07:00
Andrew Purtell 2239d55871 HBASE-13324 o.a.h.h.Coprocessor should be LimitedPrivate("Coprocessor") 2015-09-24 10:57:32 -07:00
Stephen Yuan Jiang 5b7894f92b HBASE-14107 Administrative Task: Provide an API to List all procedures (Stephen Yuan Jiang) 2015-09-23 21:48:32 -07:00