Commit Graph

12591 Commits

Author SHA1 Message Date
tedyu 4d09116695 HBASE-16716 OfflineMetaRepair leaves empty directory inside /hbase/WALs which remains forever (Pankaj Kumar) 2016-10-11 07:19:54 -07:00
zhangduo d9f18c7f03 HBASE-16793 Exclude shaded protobuf files from rat check 2016-10-11 14:00:36 +08:00
tedyu 83fc59d5c9 HBASE-16804 JavaHBaseContext.streamBulkGet is void but should be JavaDStream (Igor Yurinok) 2016-10-10 19:34:21 -07:00
tedyu 0f21c41eda HBASE-16801 The Append/Increment may return the data from future (Chiaping Tsai) 2016-10-10 18:31:31 -07:00
Gary Helmling 7493e79f15 HBASE-16788 Guard HFile archiving under a separate lock 2016-10-10 15:58:12 -07:00
Dustin Pho fcef2c02c9 HBASE-16661 Add last major compaction age to per-region metrics
Signed-off-by: Gary Helmling <garyh@apache.org>
2016-10-10 15:16:12 -07:00
Huaxiang Sun 341f049e77 HBASE-16699 Overflows in AverageIntervalRateLimiter's refill() and getWaitInterval()
Signed-off-by: Matteo Bertozzi <matteo.bertozzi@cloudera.com>
2016-10-10 14:07:00 -07:00
Huaxiang Sun c930bc92f4 HBASE-16767 Mob compaction needs to clean up temporary files in face of IOExceptions.
1). Fix resource leak issue upon exception during mob compaction.
2). Reorg the code in compactMobFilesInBatch() to make it more readable.

Signed-off-by: Jonathan M Hsieh <jmhsieh@apache.org>
2016-10-10 14:48:24 -05:00
Sean Busbey 932a1964bf Revert "1). Fix resource leak issue upon exception during mob compaction. 2). Reorg the code in compactMobFilesInBatch() to make it more readable."
This reverts commit c7cae6be3d.

Missing JIRA ID
2016-10-10 14:47:46 -05:00
Dima Spivak 3c35a722d9 Revert "HBASE-16750 hbase compilation failed on power system (Saravanan Krishnamoorthy)"
This reverts commit d1e40bf0bd.
2016-10-10 10:08:41 -05:00
Sean Busbey 6b6a801876 HBASE-16701 rely on test category timeout instead of defining one on a specific test.
Signed-off-by: Umesh Agashe <uagashe@cloudera.com>
Signed-off-by: Yu Li <liyu@apache.org>
2016-10-10 00:14:38 -05:00
tedyu f5abe17bc6 HBASE-16666 Add append and remove peer namespaces cmds for replication (Guanghao Zhang) 2016-10-09 21:22:50 -07:00
tedyu ccde439392 HBASE-16771 VerifyReplication should increase GOODROWS counter if re-comparison passes 2016-10-09 20:48:28 -07:00
ChiaPing Tsai 8a8c60889c HBASE-16794 TestDispatchMergingRegionsProcedure#testMergeRegionsConcurrently is flaky
Signed-off-by: Matteo Bertozzi <matteo.bertozzi@cloudera.com>
2016-10-09 16:53:29 -07:00
Matteo Bertozzi e06c3676f1 HBASE-16791 Fix TestDispatchMergingRegionsProcedure 2016-10-08 15:32:34 -07:00
Matteo Bertozzi 29d701a314 HBASE-16781 Fix flaky TestMasterProcedureWalLease 2016-10-07 18:01:53 -07:00
Huaxiang Sun c7cae6be3d 1). Fix resource leak issue upon exception during mob compaction. 2). Reorg the code in compactMobFilesInBatch() to make it more readable.
Signed-off-by: Jonathan M Hsieh <jmhsieh@apache.org>
2016-10-07 17:49:27 -07:00
Gary Helmling 723d56153f HBASE-16657 addendum handle null RegionLoad 2016-10-07 13:29:19 -07:00
Dustin Pho bc9a972451 HBASE-16657 Expose per-region last major compaction time in RegionServer UI
Signed-off-by: Gary Helmling <garyh@apache.org>
2016-10-07 09:49:24 -07:00
tedyu 62bc090123 HBASE-16773 AccessController should access local region if possible 2016-10-07 06:22:32 -07:00
tedyu 96d34f2a79 HBASE-16768 Inconsistent results from the Append/Increment (ChiaPing Tsai) 2016-10-07 00:59:27 -07:00
Ashu Pachauri 2c7211ec4b HBASE-16681: Flaky TestReplicationSourceManagerZkImpl 2016-10-06 16:26:38 -07:00
tedyu 97c1333831 HBASE-16772 Add verbose option to VerifyReplication for logging good rows 2016-10-06 11:16:18 -07:00
Matteo Bertozzi 7a38509782 HBASE-16777 Fix flaky TestMasterProcedureEvents 2016-10-06 07:24:39 -07:00
tedyu d1e40bf0bd HBASE-16750 hbase compilation failed on power system (Saravanan Krishnamoorthy) 2016-10-06 06:48:40 -07:00
anoopsamjohn 912ed17286 HBASE-15721 Optimization in cloning cells into MSLAB. 2016-10-06 14:48:03 +05:30
Ramkrishna 58e843dae2 HBASE-16372 References to previous cell in read path should be avoided
(Ram)
2016-10-06 14:19:12 +05:30
Matteo Bertozzi eb33b60a95 HBASE-16778 Move testIllegalTableDescriptor out from TestFromClientSide 2016-10-05 20:04:18 -07:00
Matteo Bertozzi b548d4978b HBASE-16776 Remove duplicated versions of countRow() in tests 2016-10-05 19:45:50 -07:00
anoopsamjohn 06758bf630 HBASE-16759 Avoid ByteString.copyFrom usage wherever possible. 2016-10-06 00:27:34 +05:30
Umesh Agashe 1f1a13f2e2 HBASE-16753 There is a mismatch between suggested Java version in hbase-env.sh
Signed-off-by: Dima Spivak <dimaspivak@apache.org>
2016-10-05 10:16:41 -07:00
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
anoopsamjohn 6a9b57b395 HBASE-16760 Deprecate ByteString related methods in Bytes.java. 2016-10-05 11:19:37 +05:30
Mikhail Antonov 5ae516bd63 HBASE-16644 Errors when reading legit HFile Trailer of old (v2.0) format file 2016-10-04 21:10:42 -07:00
Jonathan M Hsieh 0daeb635d0 HBASE-16763 Remove unintentional dependency on net.sf.ehcache.search.Results 2016-10-04 16:40:15 -07:00
stack 89eb71f1b6 HBASE-16764 hbase-protocol-shaded generate-shaded-classes profile unpacks shaded java files into wrong location 2016-10-04 11:56:16 -07:00
tedyu 34ad9652ae HBASE-16750 hbase compilation failed on power system - revert due to failure in mvn site 2016-10-04 09:24:47 -07:00
stack b30b6dffe1 HBASE-16742 Add chapter for devs on how we do protobufs going forward; ADDENDUM -- put all notes on CPEPs together in the CPEP section 2016-10-04 08:44:46 -07:00
tedyu b952e64751 HBASE-15560 TinyLFU-based BlockCache - revert pending performance verification 2016-10-04 08:37:29 -07:00
stack b5d34cf6fc HBASE-16742 Add chapter for devs on how we do protobufs going forward; ADDENDUM -- add in Duo Zhang remark 2016-10-04 08:34:39 -07:00
tedyu 9e0c2562a9 HBASE-15560 TinyLFU-based BlockCache (Ben Manes) 2016-10-04 05:15:51 -07:00
stack 2508edcd4e HBASE-16742) Add chapter for devs on how we do protobufs going forward
Fix misspelling noticed by Anoop Sam John.
2016-10-03 22:42:46 -07: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
tedyu cc237c4b78 HBASE-16750 hbase compilation failed on power system (Saravanan Krishnamoorthy) 2016-10-03 15:59:09 -07:00
tedyu b43d1ecf5c HBASE-16739 Timed out exception message should include encoded region name 2016-10-03 06:46:04 -07:00
tedyu 1c083d9794 HBASE-16739 Timed out exception message should include encoded region name - Revert due to misspelled word in subject 2016-10-03 06:45:44 -07:00
Ramkrishna 7d0a6a82ab HBASE-15871 Memstore flush doesn't finish because of backwardseek() in
memstore scanner. (Ram)
2016-10-03 17:15:24 +05:30
anoopsamjohn 250ad644e4 HBASE-16738 L1 cache caching shared memory HFile block when blocks promoted from L2 to L1. 2016-10-03 16:04:48 +05:30
tedyu ec0adbd2c0 HBASE-16739) imed out exception message should include encoded region name 2016-10-02 21:09:09 -07:00