363 Commits

Author SHA1 Message Date
zhangduo
3aa4dfa73d HBASE-16690 Move znode path configs to a separated class 2016-10-05 20:12:44 +08:00
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
zhangduo
c04b389181 HBASE-16445 Refactor and reimplement RpcClient 2016-09-08 20:32:56 +08:00
chenheng
7363a76660 HBASE-16562 ITBLL should fail to start if misconfigured, addendum 2016-09-07 15:29:55 +08:00
chenheng
78af20944c HBASE-16562 ITBLL should fail to start if misconfigured 2016-09-07 11:29:54 +08: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
d5080e82fb HBASE-16418 Reduce duration of sleep waiting for region reopen in IntegrationTestBulkLoad#installSlowingCoproc() 2016-08-15 17:26:11 -07:00
Reid
3c3457c6c0 HBASE-14345 Consolidate printUsage in IntegrationTestLoadAndVerify (Reid Chan) 2016-08-10 09:38:46 -07:00
Sean Busbey
431c8c9ad0 HBASE-8386 deprecate TableMapReduce.addDependencyJars(Configuration, class<?> ...)
Signed-off-by: Matteo Bertozzi <matteo.bertozzi@cloudera.com>
2016-08-05 10:35:02 -05:00
Enis Soztutar
39db239d4e HBASE-16271 Fix logging and re-run the test in IntegrationTestBulkLoad 2016-08-03 17:02:35 -07:00
Gary Helmling
84b7010a30 HBASE-16231 Support client keytab login for integration tests 2016-07-15 16:30:33 -07:00
Stephen Yuan Jiang
f04eeecffc HBASE-14552 Procedure V2: Reimplement DispatchMergingRegionHandler (Stephen Yuan Jiang) 2016-07-15 07:06:53 -07:00
Joseph Hwang
cb118c8de6 HBASE-15935 Set up a concurrent walker that walks flushed circular linked lists as a Loop Mode
Signed-off-by: Elliott Clark <eclark@apache.org>
2016-07-08 09:09:02 -07:00
Enis Soztutar
17edca6346 HBASE-16190 IntegrationTestDDLMasterFailover failed with IllegalArgumentException: n must be positive (Romil Choksi and Heng Chen) 2016-07-07 16:34:08 -07:00
Enis Soztutar
c137bafe51 HBASE-16182 Increase IntegrationTestRpcClient timeout 2016-07-06 11:23:46 -07:00
chenheng
68c1b34dbc HBASE-16040 Remove configuration "hbase.replication" 2016-06-24 10:41:35 +08: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
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
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
eshcar
a27504c701 HBASE-14920: Compacting memstore
Signed-off-by: stack <stack@apache.org>
2016-05-20 03:41:43 -07:00
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
Ramkrishna
c06a976a98 HBASE-15607 Remove PB references from Admin for 2.0 (Ram) 2016-05-03 10:51:46 +05:30
Enis Soztutar
0520097611 HBASE-15295 MutateTableAccess.multiMutate() does not get high priority causing a deadlock 2016-03-28 17:56:32 -07:00
Enis Soztutar
ca816f0780 HBASE-6721 RegionServer Group based Assignment (Francis Liu) 2016-03-14 18:28:50 -07:00
Jonathan M Hsieh
f658f3ef83 HBASE-15356 Remove unused imports (Youngjoon Kim) 2016-03-03 11:42:38 -08:00
stack
13a46df181 HBASE-15190 Monkey dies when running on shared cluster (gives up when can't kill the other fellows processes) 2016-01-31 10:51:41 -06:00
Jonathan M Hsieh
dc57996ca6 HBASE-15104 Occasional failures due to NotServingRegionException in IT tests (Huaxiang Sun) 2016-01-14 07:59:33 -08:00
tedyu
3d3677932a HBASE-15070 DistributedHBaseCluster#restoreRegionServers() starts new RS process on master server (Samir Ahmic) 2016-01-07 09:14:00 -08:00
Samir Ahmic
0bdd6e487f HBASE-15034 IntegrationTestDDLMasterFailover does not clean created namespaces.
Signed-off-by: Matteo Bertozzi <matteo.bertozzi@cloudera.com>
2015-12-24 04:53:20 -08:00
Mikhail Antonov
abe30b52a8 HBASE-14534 Bump yammer/coda/dropwizard metrics dependency version 2015-12-15 12:11:27 -08:00
stack
bebcc09fb3 HBASE-14769 Remove unused functions and duplicate javadocs from HBaseAdmin 2015-12-10 15:02:21 -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 6adce67572a502a067c74f78cf83683dda4d67e4.
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
stack
7dc4f12199 HBASE-14819 hbase-it tests failing with OOME: permgen 2015-11-19 14:46:53 -08:00
Jonathan M Hsieh
0207da8cee HBASE-14780 Integration Test that run with chaos monkey must specify cfs 2015-11-10 15:02:23 -08:00
Elliott Clark
1144237765 HBASE-14781 Turn per cf flushing on for ITBLL by default 2015-11-07 11:50:13 -08:00
Elliott Clark
ebd2df723f HBASE-14723 Fix IT tests split too many times 2015-11-04 11:55:38 -08:00
Jonathan M Hsieh
7368344585 HBASE-14731 Add -DuseMob option to ITBLL 2015-11-02 05:03:38 -08: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
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
Enis Soztutar
2b86002521 HBASE-14682 CM restore functionality for regionservers is broken 2015-10-26 16:47:16 -07:00
Andrew Purtell
efb82957da HBASE-13318 RpcServer.getListenerAddress should handle when the accept channel is closed 2015-10-26 15:11:12 -07:00
Enis Soztutar
b4ba615c70 HBASE-14535 Integration test for rpc connection concurrency / deadlock testing 2015-10-22 18:35:34 -07:00
Elliott Clark
35660b4f5c HBASE-14658 Addendum; Allow loading a MonkeyFactory by class name 2015-10-22 12:09:58 -07:00
Matteo Bertozzi
36a196722c HBASE-14669 remove unused import and fix javadoc 2015-10-22 09:25:26 -07:00
Elliott Clark
2e2cbd0201 HBASE-14658 Allow loading a MonkeyFactory by class name 2015-10-22 08:54:12 -07:00
Jonathan M Hsieh
5363f371bb HBASE-14666 Remove deprecated HBaseTestingUtility#deleteTable(...) methods 2015-10-21 21:34:23 -07:00
Elliott Clark
e874a31d75 HBASE-14625 Chaos Monkey should shut down faster 2015-10-16 15:22:31 -07:00