Commit Graph

248 Commits

Author SHA1 Message Date
Peter Somogyi 0af61dce65
HBASE-18815 We need to pass something like CompactionRequest in CP to give user some information about the compaction
CompactionRequest was removed from CP in HBASE-18453, this change reintroduces
CompatcionRequest to CP as a read-only interface called CompactionRequest.
The CompactionRequest class is renamed to CompactionRequestImpl.

Additionally, this change removes selectionTimeInNanos from CompactionRequest and
uses selectionTime as a replacement. This means that CompactionRequest:toString
is modified and compare as well.

Signed-off-by: Michael Stack <stack@apache.org>
2017-10-03 07:52:33 -07:00
Apekshit Sharma 74d0adce61 HBASE-18884 Coprocessor Design Improvements follow up of HBASE-17732
- Change Service Coprocessor#getService() to List<Service> Coprocessor#getServices()
- Checkin the finalized design doc into repo
- Added example to javadoc of Coprocessor base interface on how to implement one in the new design
2017-09-28 10:25:47 -07:00
Chia-Ping Tsai a11a35a113 HBASE-18839 Apply RegionInfo to code base 2017-09-28 20:19:29 +08:00
zhangduo 7f4c3b3564 HBASE-18826 Use HStore instead of Store in our own code base and remove unnecessary methods in Store interface 2017-09-28 15:26:52 +08:00
Apekshit Sharma 97513466c0 HBASE-17732 Coprocessor Design Improvements
------------------------------------------------------
TL;DR
------------------------------------------------------
We are moving from Inheritence
- Observer *is* Coprocessor
- FooService *is* CoprocessorService
To Composition
- Coprocessor *has* Observer
- Coprocessor *has* Service

------------------------------------------------------
Design Changes
------------------------------------------------------
- Adds four new interfaces - MasterCoprocessor, RegionCoprocessor, RegionServierCoprocessor,
  WALCoprocessor
- These new *Coprocessor interfaces have a get*Observer() function for each observer type
  supported by them.
- Added Coprocessor#getService() to base interface. All extending *Coprocessor interfaces will
  get it from the base interface.
- Added BulkLoadObserver hooks to RegionCoprocessorHost instad of SecureBulkLoadManager doing its
  own trickery.
- CoprocessorHost#find*() fuctions: Too many testing hooks digging into CP internals.
  Deleted if can, else marked @VisibleForTesting.

------------------------------------------------------
Backward Compatibility
------------------------------------------------------
- Old coprocessors implementing *Observer won't get loaded (no backward compatibility guarantees).
- Third party coprocessors only implementing Coprocessor will not get loaded (just like Observers).
- Old coprocessors implementing CoprocessorService (for master/region host)
  /SingletonCoprocessorService (for RegionServer host) will continue to work with 2.0.
- Added test to ensure backward compatibility of CoprocessorService/SingletonCoprocessorService
- Note that if a coprocessor implements both observer and service in same class, its service
  component will continue to work but it's observer component won't work.

------------------------------------------------------
Notes
------------------------------------------------------
Did a side-by-side comparison of CPs in master and after patch. These coprocessors which were just
CoprocessorService earlier, needed a home in some coprocessor in new design. For most it was clear
since they were using a particular type of environment. Some were tricky.

- JMXListener - MasterCoprocessor and RSCoprocessor (because jmx listener makes sense for
  processes?)
- RSGroupAdminEndpoint --> MasterCP
- VisibilityController -> MasterCP and RegionCP

These were converted to RegionCoprocessor because they were using RegionCoprocessorEnvironment
which can only come from a RegionCPHost.
- AggregateImplementation
- BaseRowProcessorEndpoint
- BulkDeleteEndpoint
- Export
- RefreshHFilesEndpoint
- RowCountEndpoint
- MultiRowMutationEndpoint
- SecureBulkLoadEndpoint
- TokenProvider

Change-Id: I813145f2bc11815f52ac703563b879962c249764
2017-09-27 12:40:25 -07:00
anoopsamjohn bd68551f26 HBASE-18298 RegionServerServices Interface cleanup for CP expose. 2017-09-27 11:01:51 +05:30
zhangduo a5f84430a3 HBASE-18825 Use HStoreFile instead of StoreFile in our own code base and remove unnecessary methods in StoreFile interface 2017-09-25 09:35:39 +08:00
Chia-Ping Tsai a6c3c645fd HBASE-18823 Apply RegionInfo to MasterObserver/RegionObserver/WALObserver 2017-09-20 18:43:11 -07:00
zhangduo 61d10feffa HBASE-18453 CompactionRequest should not be exposed to user directly 2017-09-14 20:37:33 +08:00
zhangduo e6e52cd80f HBASE-18793 Remove deprecated methods in RegionObserver 2017-09-13 11:33:03 +08:00
Michael Stack 591d86ab29 HBASE-18782 Module untangling work 2017-09-10 18:10:56 -07:00
Michael Stack fb537fe736 HBASE-18723 [pom cleanup] Do a pass with dependency:analyze; remove unused and explicity list the dependencies we exploit
Do a pass with dependency:analyze; remove unused and
explicity list the dependencies we exploit.
Remove the parent dependencies set which had junit, mockito,
log4j, and findbugs annotations (had to put junit back
temporarily in subsequent version of this patch TODO). Listing in
parent set meant these libs were dependencies for all modules
which in practice was not the case. Edited all modules so
those that need any from this parent set now do explicit listing.

Ran the dependency:analyze over the project. Acted on most
suggested removals and requests for explicit listing. Some
grey areas remain around transitives that come in with
hadoop -needs better excludes, another project- and that
the dependency:analyze tool is not always accurate in its
reporting.
2017-08-31 12:41:31 -07:00
Chia-Ping Tsai 7465973068 HBASE-15806 An endpoint-based export tool 2017-08-30 14:06:04 +08:00
Chia-Ping Tsai d63a287bfd HBASE-18519 Use builder pattern to create cell 2017-08-28 14:14:49 +08:00
Apekshit Sharma 664b6be0ef HBASE-18640 Move mapreduce out of hbase-server into separate module.
- Moves out o.a.h.h.{mapred, mapreduce} to new hbase-mapreduce module which depends
  on hbase-server because of classes like *Snapshot{Input,Output}Format.java, WALs, replication, etc
- hbase-backup depends on it for WALPlayer and MR job stuff
- A bunch of tools needed to be pulled into hbase-mapreduce becuase of their dependencies on MR.
  These are: CompactionTool, LoadTestTool, PerformanceEvaluation, ExportSnapshot
  This is better place of them than hbase-server. But ideal place would be in separate hbase-tools module.
- There were some tests in hbase-server which were digging into these tools for static util funtions or
  confs. Moved these to better/easily shared place. For eg. security related stuff to HBaseKerberosUtils.
- Note that hbase-mapreduce has secondPartExecution tests. On my machine they took like 20 min, so maybe
  more on apache jenkins. That's basically equal reduction of runtime of hbase-server tests, which is a
  big win!

Change-Id: Ieeb7235014717ca83ee5cb13b2a27fddfa6838e8
2017-08-25 18:38:48 -07:00
zhangduo 8d33949b8d HBASE-16324 Remove LegacyScanQueryMatcher 2017-08-26 08:04:43 +08:00
Ajay Jadhav 98bb5c05e3 HBASE-18448 Added refresh HFiles coprocessor endpoint
Signed-off-by: anoopsamjohn <anoopsamjohn@gmail.com>
2017-08-25 06:56:41 +05:30
anoopsamjohn 88356029f1 Revert "HBASE-18448 Added refresh HFiles coprocessor endpoint"
This reverts commit 612c23556d.
2017-08-24 21:13:08 +05:30
Ajay Jadhav 612c23556d HBASE-18448 Added refresh HFiles coprocessor endpoint
Signed-off-by: anoopsamjohn <anoopsamjohn@gmail.com>
2017-08-24 20:42:49 +05:30
Mike Drob 51d458872d HBASE-12349 Add custom error-prone module 2017-08-22 16:38:17 -05:00
Michael Stack c6ac04ab39 HBASE-18271 Shade netty Purge mention of netty-all.
Add in hbase-thirdparty hbase-shaded-netty instead.
s/io.netty/org.apache.hadoop.hbase.shaded.io.netty/ everywhere in hbase.

Also set a system property when running tests and when starting
hbase; required by netty so can find the relocation files in the
bundled .so.
2017-08-13 12:46:21 -07:00
Tamas Penzes 8da77b4146 HBASE-18387: [Thrift] Make principal configurable in DemoClient.java
Added optional (fourth) parameter "server-principal"
The solution is backward compatible, in case not given, uses "hbase" as default value
If the third parameter is skipped the fourth cannot be set.

Signed-off-by: Josh Elser <elserj@apache.org>
2017-08-10 23:47:07 -04:00
Chia-Ping Tsai fd76eb39d7 HBASE-18502 Change MasterObserver to use TableDescriptor and ColumnFamilyDescriptor 2017-08-07 11:26:15 +08:00
Michael Stack 7a6de1bd42 HBASE-17056 Remove checked in PB generated files
Selective add of dependency on hbase-thirdparty jars.
Update to READMEs on how protobuf is done (and update to refguide).
Removed all checked in generated protobuf files. They are generated
on the fly now as part of mainline build.
2017-08-02 09:33:20 -07:00
Michael Stack 890d92a90c HBASE-17908 Upgrade guava
Pull in guava 22.0 by using the shaded version up in new hbase-thirdparty project.

In poms, exclude guava everywhere except on hadoop-common. Do this so
we minimize transitive includes. hadoop-common is needed because hadoop
Configuration uses guava doing preconditions.

Everywhere we used guava, instead use shaded so fix a load of imports.

Stopwatch API changed as did hashing and toStringHelper which is now
in MoreObjects class. Otherwise, minimal changes to come up on 22.0
2017-07-21 15:28:08 +01:00
Chia-Ping Tsai bc8ebc6f72 HBASE-18241 Change client.Table, client.Admin, Region, Store, and HBaseTestingUtility to not use HTableDescriptor or HColumnDescriptor 2017-07-08 16:54:25 +08:00
Michael Stack 6786b2b63e Revert "HBASE-17056 Remove checked in PB generated files Selective add of dependency on"
Revert for now. Build unstable and some interesting issues around
CLASSPATH

This reverts commit df93c13fd2.
2017-07-06 21:58:32 -07:00
Michael Stack df93c13fd2 HBASE-17056 Remove checked in PB generated files Selective add of dependency on
hbase-thirdparty jars. Update to READMEs on how protobuf is done (and update to
refguide) Removed all checked in generated protobuf files. They are generatedon
the fly now as part of mainline build.
2017-07-05 20:57:11 -07:00
Chia-Ping Tsai 8b63eb6fc6 HBASE-18314 Eliminate the findbugs warnings for hbase-examples 2017-07-05 09:54:40 +08:00
Peter Somogyi f2731fc241 HBASE-18264 Update pom plugins
Update plugins in main and subprojects
Unified versions to use variable instead of direct values

Affected plugins:
- apache-rat-plugin 0.11 -> 0.12
- asciidoctor-maven-plugin 1.5.2.1 -> 1.5.5
- asciidoctorj-pdf 1.5.0-alpha.6 -> 1.5.0-alpha.15
- build-helper-maven-plugin 1.9.1 -> 3.0.0
- buildnumber-maven-plugin 1.3 -> 1.4
- exec-maven-plugin 1.2.1/1.4.0 -> 1.6.0
- extra-enforcer-rules 1.0-beta-3 -> 1.0-beta-6
- findbugs-maven-plugin 3.0.0 -> 3.0.4
- jamon-maven-plugin 2.4.1 -> 2.4.2
- maven-bundle-plugin 2.5.3 -> 3.3.0
- maven-compiler-plugin 3.2/3.5.1 -> 3.6.1
- maven-eclipse-plugin 2.9 -> 2.10
- maven-shade-plugin 2.4.1 -> 3.0.0
- maven-surefire-plugin 2.18.1 -> 2.20
- maven-surefire-report-plugin 2.7.2 -> 2.20
- scala-maven-plugin 3.2.0 -> 3.2.2
- spotbugs 3.1.0-RC1 -> 3.1.0-RC3
- wagon-ssh 2.2 -> 2.12
- xml-maven-plugin 1.0 -> 1.0.1

- maven-assembly-plugin 2.4 -> 2.6(inherited)
- maven-dependency-plugin 2.4 -> 2.10 (inherited)
- maven-enforcer-plugin 1.3.1 -> 1.4.1 (inherited)
- maven-javadoc-plugin 2.10.3 -> 2.10.4 (inherited)
- maven-resources-plugin 2.7 (inherited)
- maven-site-plugin 3.4 -> 3.5.1 (inherited)

Change-Id: I84539f555be498dff18caed1e3eea1e1aeb2143a

Signed-off-by: Michael Stack <stack@apache.org>
2017-07-03 19:42:46 -07:00
Peter Somogyi 61534931cc HBASE-18291 Regenerate thrift2 python examples
Change thrift python example to version 0.9.3
Update instructions in DemoClient.py

Change-Id: I5d2c2698c7f1c848b2c8bfaa761a6e1376811be3

Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-07-03 09:25:28 -07:00
zhangduo cb88b64629 HBASE-17008 Examples to make AsyncClient go down easy 2017-06-14 10:24:19 +08:00
Michael Stack 929c9dab14 HBASE-18181 Move master branch to version 3.0.0-SNAPSHOT post creation of branch-2 2017-06-06 22:04:39 -07:00
Xiang Li 1367519cd0 HBASE-17947 Location of Examples.proto is wrong in comment of RowCountEndPoint.java
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-04-25 01:48:57 -07:00
eshcar 8f4ae0a0dc HBASE-17655 Removing MemStoreScanner and SnapshotScanner 2017-03-21 12:35:47 +02:00
Jan Hentschel b53f354763 HBASE-17532 Replaced explicit type with diamond operator
Signed-off-by: Michael Stack <stack@apache.org>
2017-03-07 11:22:51 -08:00
Andrew Purtell 404a2883f2 HBASE-17722 Metrics subsystem stop/start messages add a lot of useless bulk to operational logging 2017-03-03 12:40:06 -08:00
Apekshit Sharma f444b3b542 HBASE-17312 Use 'default' keyword in coprocessor Observer interfaces to get rid of 'Base...Observer' implementations. Some javadoc improvements too.
Reason for refactor:
In cases where one might need to use multiple observers, say region, master and regionserver; and the fact that only one class can be extended, it gives rise to following pattern:

public class BaseMasterAndRegionObserver
  extends BaseRegionObserver
  implements MasterObserver

class AccessController
  extends BaseMasterAndRegionObserver
  implements RegionServerObserver

were BaseMasterAndRegionObserver is full copy of BaseMasterObserver.

There is an example of simple case too where the current design fails.
Say only one observer is needed by the coprocessor, but the design doesn't permit extending even that single observer (see RSGroupAdminEndpoint), that leads to copy of full Bas
e...Observer class into coprocessor class leading to 1000s of lines of code and this ugly mix of 5 main functions with 100 useless functions.

Javadocs changes:
- Adds class comments on 'default' methods and expectations.
- Adds explanaiton of Exception handling in Observers' class comment. Removes redundant @throws before each function.
- Improves javadocs for a bunch of functions
- deletes empty @params in a bunch of places

Change-Id: I265738d47e8554e7b4678e88bb916a0cc7d00ab3
2017-02-25 02:49:01 -08:00
Michael Stack fb2c89b1b3 HBASE-16785 We are not running all tests
M TestStressWALProcedureStore.java
Disable test that now runs that fails because of difference in pb3.1.0.

Signed-off-by: Michael Stack <stack@apache.org>
2017-01-26 21:49:18 -08:00
Michael Stack 1ee8776273 HBASE-16785 We are not running all tests Do nothing patch just to get baseline of how many tests we run 2017-01-26 12:21:00 -08:00
Enis Soztutar c64a1d1994 HBASE-9774 HBase native metrics and metric collection for coprocessors 2017-01-25 11:47:35 -08:00
Jan Hentschel 55a1aa1e73 HBASE-10699 Set capacity on ArrayList where possible and use isEmpty instead of size() == 0
Signed-off-by: Michael Stack <stack@apache.org>
2017-01-20 22:58:20 -08:00
Enis Soztutar 07757501d7 HBASE-17052 compile-protobuf profile does not compile protobufs in some modules anymore 2016-11-10 11:37:26 -08:00
Michael Stack ad0e862f78 "HBASE-16952 Replace hadoop-maven-plugins with protobuf-maven-plugin for building protos""
Rely on the new plugin to do all proto generation. No need of an
external protoc setup anymore. Mvn will do it all for you.

Updated all READMEs appropriately.

Signed-off-by: Michael Stack <stack@apache.org>
2016-10-28 16:49:35 -07:00
Michael Stack 738ff821dd Revert "HBASE-16952 Replace hadoop-maven-plugins with protobuf-maven-plugin for building protos"
Revert premature commit

This reverts commit d0e61b0e9a.
2016-10-27 13:17:07 -07:00
Michael Stack d0e61b0e9a HBASE-16952 Replace hadoop-maven-plugins with protobuf-maven-plugin for building protos
This patch changes poms to use protobuf-maven-plugin instaed of
hadoop-maven-plugins generating protos. Adds a few missing READMEs too
as well as purge of unused protos turned up by the new plugin.
2016-10-27 10:11:58 -07:00
tedyu 4983c742e0 HBASE-16829 DemoClient should detect secure mode 2016-10-21 16:35:41 -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
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
stack 9d740f7b8b HBASE-16263 Move all to do w/ protobuf -- *.proto files and generated classes -- under hbase-protocol
Signed-off-by: stack <stack@apache.org>
2016-07-21 10:02:05 -07: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
stack 26dd0d17f8 HBASE-14926 Hung ThriftServer; no timeout on read from client; if client crashes, worker thread gets stuck reading 2015-12-04 13:19:12 -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
Matteo Bertozzi 55087ce888 HBASE-14863 Add missing test/resources/log4j files in hbase modules 2015-11-22 07:31:16 -08:00
Elliott Clark 3e45755411 HBASE-14752 Add example of using the HBase client in a multi-threaded environment 2015-11-04 12:00:15 -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
stack 996866d3ae HBASE-14266 RegionServers have a lock contention of Configuration.getProps 2015-10-24 14:43:53 -07:00
Matteo Bertozzi 36a196722c HBASE-14669 remove unused import and fix javadoc 2015-10-22 09:25:26 -07:00
Andrew Purtell f06daaf010 HBASE-13825 Use ProtobufUtil#mergeFrom and ProtobufUtil#mergeDelimitedFrom in place of builder methods of same name 2015-08-06 21:48:09 -07:00
Sean Busbey 1b0b67fb7c HBASE-14085 Update LICENSE and NOTICE files.
* corrects license/notice for source distribution
* adds inception year to correct copyright in generated NOTICE files for jars
* updates project names in poms to use "Apache HBase" instead of "HBase" so jar NOTICE files will be correct
* uses append-resources to include supplemental info on jars with 3rd party works in source
* adds an hbase specific resource bundle for jars that include 3rd party works for binaries
** uses supplemental-model to fill in license gaps
** uses the above and a shade plugin transformation to build proper files for shaded jars.
** uses the above and the assembly plugin to build the proper files for bin assembly
* adds a NOTICE item for things copied out of Hadoop (TODO legal-discuss)
2015-08-04 17:16:56 -05:00
Sean Busbey 4ce6f486d0 HBASE-14087 Ensure correct ASF headers for docs/code
* adds missing headers
* corrects some old-form headers to current
* restores proper header for guava copied LimitInputStream
* adds proper header for protobuf copied read/writeRawVarint
2015-07-29 14:25:43 -05:00
Jerry He d2fbaf267e HBASE-14024 ImportTsv is not loading hbase-default.xml (Ashish Singhi) 2015-07-28 11:51:25 -07:00
Elliott Clark 62bce5f903 HBASE-14077 Add package to hbase-protocol protobuf files. 2015-07-15 11:15:58 -07:00
Gábor Lipták 5826bf2a7c HBASE-13963 Do not leak jdk.tools dependency from hbase-annotations
Signed-off-by: Sean Busbey <busbey@apache.org>
2015-06-26 08:48:02 -05:00
Misty Stanley-Jones b16293b5e2 HBASE-13898 correct additional javadoc failures under java 8 <Gabor Liptak> 2015-06-16 14:18:09 +10:00
Misty Stanley-Jones 5e6373e8ec Revert "Correct Javadoc generation errors"
This reverts commit 0a227b79d6.
2015-06-16 14:18:09 +10:00
Gábor Lipták 0a227b79d6 Correct Javadoc generation errors 2015-06-16 13:27:45 +10:00
Nick Dimiduk 8d1d6c16da HBASE-13247 Change BufferedMutatorExample to use addColumn() since add() is deprecated 2015-06-15 17:48:13 -07:00
Sean Busbey a016b23e85 HBASE-13728 Remove direct use of Hadoop's GenericOptionParser.
* In most cases, just shift to proper use of ToolRunner
* Fix timing issue in TestImportExport
** add some diagnostic logs to Import and TestImportExport
** when testing for WAL use under different durability requests, ignore meta edits.
* In the case of TestImportTsv make a local anonymous class so we can get at internals.
2015-05-29 12:38:52 -05:00
ramkrishna 977f867439 HBASE-10800 - Use CellComparator instead of KVComparator (Ram) 2015-05-05 11:38:10 +05:30
Jonathan Lawlor 62d47e175c HBASE-13421 Reduce the number of object creations introduced by HBASE-11544 in scan RPC hot code paths
Signed-off-by: stack <stack@apache.org>
2015-04-08 14:02:49 -07:00
stack 8cd3001f81 Revert "HBASE-11544 [Ergonomics] hbase.client.scanner.caching is dogged and will try to return batch even if it means OOME"
References the wrong JIRA above so revert; also an addendum is on the
way.

This reverts commit 26ba621e47.
2015-04-08 09:32:09 -07:00
Jonathan Lawlor 26ba621e47 HBASE-11544 [Ergonomics] hbase.client.scanner.caching is dogged and will try to return batch even if it means OOME
Added in some check-style fixes to bring us back under the limit

Signed-off-by: stack <stack@apache.org>
2015-04-08 08:16:54 -07:00
Andrew Purtell f1f4b66183 HBASE-12972 Region, a supportable public/evolving subset of HRegion 2015-03-30 18:01:11 -07:00
Elliott Clark 55a5a3be33 HBASE-13364 Make error prone off by default 2015-03-30 16:03:53 -07:00
Josh Elser 72855c584e HBASE-13236 Add addt'l lifecycle-mapping executions.
Adds a number of lifecycle-mapping entries which
prevent errors from showing up in Eclipse on a fresh
import of HBase. For plugins defined in the top-level
pom, the mapping is added there; otherwise, the mapping
is pushed down to the child pom.

Signed-off-by: Sean Busbey <busbey@apache.org>
2015-03-13 22:35:52 -05:00
Jonathan Lawlor de9791e91e HBASE-11544: [Ergonomics] hbase.client.scanner.caching is dogged and will try to return batch even if it means OOME
Signed-off-by: stack <stack@apache.org>
2015-03-04 17:34:48 -08:00
Misty Stanley-Jones 39425a8558 HBASE-11670 Generate PDF of Reference Guide 2015-03-05 09:31:11 +10:00
tedyu 5dfcee0871 HBASE-13115 Fix the usage of remote user in thrift doAs implementation (Srikanth Srungarapu) 2015-03-03 06:48:56 -08:00
stack eea9873cef HBASE-12985 Javadoc warning and findbugs fixes to get us green again 2015-02-07 17:05:11 -08:00
Nick Dimiduk ab18158e60 HBASE-12728 buffered writes substantially less useful after removal of HTablePool (Solomon Duskis and Nick Dimiduk)
In our pre-1.0 API, HTable is considered a light-weight object that consumed by
a single thread at a time. The HTablePool class provided a means of sharing
multiple HTable instances across a number of threads. As an optimization,
HTable managed a "write buffer", accumulating edits and sending a "batch" all
at once. By default the batch was sent as the last step in invocations of
put(Put) and put(List<Put>). The user could disable the automatic flushing of
the write buffer, retaining edits locally and only sending the whole "batch"
once the write buffer has filled or when the flushCommits() method in invoked
explicitly. Explicit or implicit batch writing was controlled by the
setAutoFlushTo(boolean) method. A value of true (the default) had the write
buffer flushed at the completion of a call to put(Put) or put(List<Put>). A
value of false allowed for explicit buffer management. HTable also exposed the
buffer to consumers via getWriteBuffer().

The combination of HTable with setAutoFlushTo(false) and the HTablePool
provided a convenient mechanism by which multiple "Put-producing" threads could
share a common write buffer. Both HTablePool and HTable are deprecated, and
they are officially replaced in The new 1.0 API by Table and BufferedMutator.
Table, which replaces HTable, no longer exposes explicit write-buffer
management. Instead, explicit buffer management is exposed via BufferedMutator.
BufferedMutator is made safe for concurrent use. Where code would previously
retrieve and return HTables from an HTablePool, now that code creates and
shares a single BufferedMutator instance across all threads.
2015-01-23 08:48:31 -08:00
Misty Stanley-Jones 1a21c1684c HBASE-11533 Asciidoc Proof of Concept 2015-01-13 22:32:29 -08:00
tedyu 9246af8dac HBASE-12796 Clean up HTable and HBaseAdmin deprecated constructor usage (Jurriaan Mous) 2015-01-08 07:49:28 -08:00
Esteban Gutierrez b2eea8cac6 HBASE-12695 JDK 1.8 compilation broken
Signed-off-by: stack <stack@apache.org>
2014-12-29 11:02:04 -08:00
Srikanth Srungarapu ba86c18f20 HBASE-12704 Add demo client which uses doAs functionality on Thrift-over-HTTPS 2014-12-17 16:13:24 -08:00
Jimmy Xiang d2c5e4bf74 Revert "Adding demo client"
This reverts commit 77a7925c32.
2014-12-17 16:11:47 -08:00
Srikanth Srungarapu 77a7925c32 Adding demo client 2014-12-17 16:06:56 -08:00
stack 56a03d736a HBASE-12603 Remove javadoc warnings introduced due to removal of unused imports (Varun Saxena) 2014-12-01 10:13:16 -08:00
stack 555e78005d HBASE-12526 Remove unused imports (Varun Saxena) 2014-11-29 09:20:46 -08:00
Andrew Purtell 1ba615657b HBASE-12382 Restore incremental compilation 2014-11-11 17:45:37 -08:00
Andrew Purtell 70a312e53f HBASE-11912 Catch some bad practices at compile time with error-prone 2014-10-27 09:29:23 -07:00
Andrew Purtell ff5bc351b2 Revert "HBASE-11912 Catch some bad practices at compile time with error-prone"
This reverts commit 7ed0260eff.
2014-10-25 08:33:43 -07:00
Andrew Purtell 7ed0260eff HBASE-11912 Catch some bad practices at compile time with error-prone 2014-10-24 18:15:12 -07:00
Andrew Purtell 3557a32352 HBASE-12106 Move test annotations to test artifact (Enis Soztutar) 2014-10-06 23:16:22 -07:00
stack b5783795cd HBASE-12038 Replace internal uses of signatures with byte[] and String tableNames to use the TableName equivalents (Solomon Duskis) 2014-09-30 16:35:55 -07:00
Enis Soztutar 6189b52fb0 HBASE-12042 Replace internal uses of HTable(Configuration, String) with HTable(Configuration, TableName) (Solomon Duskis) 2014-09-29 18:39:44 -07:00
Elliott Clark 2635791027 HBASE-12062 Fix usage of Collections.toArray 2014-09-23 09:58:24 -07:00
Jimmy Xiang 0ff05f46e7 HBASE-11960 Provide a sample to show how to use Thrift client authentication 2014-09-19 09:31:30 -07:00
stack 3c9bd7d296 HBASE-11911 Break up tests into more fine grained categories (Alex Newman) 2014-09-12 21:37:06 -07:00
Enis Soztutar 4995ed8a02 HBASE-11679 Replace HTable with HTableInterface where backwards-compatible (Carter) 2014-09-08 23:39:34 -07:00
stack 3bfbd06291 HBASE-11822 Convert EnvironmentEdge#getCurrentTimeMillis to getCurrentTime 2014-08-29 17:14:25 -07:00
Enis Soztutar 92c52a727a Updated version in master to 2.0.0-SNAPSHOT after 'branch-1' is created for 1.x line of releases 2014-06-30 20:26:47 -07:00
Andrew Purtell 8b145419ed HBASE-11161 Provide example of POJO encoding with protobuf (Nick Dimiduk) 2014-05-23 13:53:23 -07:00
Enis Soztutar b021a1a513 HBASE-10163 Example Thrift DemoClient is flaky
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1551385 13f79535-47bb-0310-9956-ffa450edef68
2013-12-16 22:34:36 +00:00
Michael Stack 57b8613688 HBASE_9955 Make hadoop2 the default and deprecate hadoop1; RETRY
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1548374 13f79535-47bb-0310-9956-ffa450edef68
2013-12-06 02:42:20 +00:00
Michael Stack fe5b28625a HBASE-9955 Make hadoop2 the default and deprecate hadoop1; REVERT
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1548351 13f79535-47bb-0310-9956-ffa450edef68
2013-12-06 01:16:51 +00:00
Michael Stack 7fbe97470e HBASE-9955 Make hadoop2 the default and deprecate hadoop1
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1548349 13f79535-47bb-0310-9956-ffa450edef68
2013-12-06 01:10:59 +00:00
Andrew Kyle Purtell f8139d1bf5 Update version in POMs to 0.99.0-SNAPSHOT after branching for release 0.98.0
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1547743 13f79535-47bb-0310-9956-ffa450edef68
2013-12-04 09:31:02 +00:00
Enis Soztutar 770e336ef6 HBASE-10020 Add maven compile-protobuf profile
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1546237 13f79535-47bb-0310-9956-ffa450edef68
2013-11-27 23:57:23 +00:00
Zhihong Yu 09ec361d3a HBASE-9754 Eliminate threadlocal from MVCC code (Ted Yu)
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1533633 13f79535-47bb-0310-9956-ffa450edef68
2013-10-18 21:09:48 +00:00
eclark ce7c5b8e03 HBASE-9699 For Downstreamers using HBaseTestingUtility is hard.
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1528645 13f79535-47bb-0310-9956-ffa450edef68
2013-10-02 21:59:19 +00:00
eclark 10f0270f2c HBASE-9597 Create an hbase-thrift module
* Starting to create a thrift server module.
* Finished creating a thrift module
* Fix the assembly.
(cherry picked from commit 84e71a3469ec8eea1e0164bee3f7b2c9e0242847)
(cherry picked from commit 7fa170bd25e9b311b1cf268070ae05562d221f49)

git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1525139 13f79535-47bb-0310-9956-ffa450edef68
2013-09-20 20:44:22 +00:00
sershe ed90c565ef HBASE-9496 make sure HBase APIs are compatible between 0.94 and 0.96
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1523825 13f79535-47bb-0310-9956-ffa450edef68
2013-09-16 22:36:38 +00:00
Jonathan Hsieh 3e25e1b7f5 HBASE-9493 Rename CellUtil#get*Array to CellUtil#clone*
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1521676 13f79535-47bb-0310-9956-ffa450edef68
2013-09-10 23:05:50 +00:00
Jonathan Hsieh 5a3060ee37 HBASE-9334 Convert KeyValue to Cell in hbase-client module - Filters
HBASE-9359 Convert KeyValue to Cell in hbase-client module - Result/Put/Delete, ColumnInterpreter


git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1519077 13f79535-47bb-0310-9956-ffa450edef68
2013-08-30 20:31:47 +00:00
jeffreyz 72eacc89f3 hbase-9226: Thrift host and port are hardcoded in thrift2 DemoClient.java
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1514425 13f79535-47bb-0310-9956-ffa450edef68
2013-08-15 18:25:21 +00:00
jeffreyz 00c3eb1a0e hbase-9222: Thrift DemoClient failed with error IllegalArgument(message:Row length is 0)
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1514401 13f79535-47bb-0310-9956-ffa450edef68
2013-08-15 17:49:37 +00:00
Michael Stack 46fb7c409d HBASE-8408 Implement namespace
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1511577 13f79535-47bb-0310-9956-ffa450edef68
2013-08-08 04:19:49 +00:00
Michael Stack 34c8e0ab16 HBASE-8224 Publish hbase build against h1 and h2 adding '-hadoop1' or '-hadoop2' to version string
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1509813 13f79535-47bb-0310-9956-ffa450edef68
2013-08-02 19:01:34 +00:00
Devaraj Das 3daea02e86 HBASE-8846. Refactors the old exceptions back to their original packages.
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1508301 13f79535-47bb-0310-9956-ffa450edef68
2013-07-30 05:14:32 +00:00
larsh 00175ae834 HBASE-8877 Reentrant row locks (Dave Latham)
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1504002 13f79535-47bb-0310-9956-ffa450edef68
2013-07-17 05:34:00 +00:00
Lars George 8bf99de619 HBASE-8890 Fix Thrift 2 example class location
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1501722 13f79535-47bb-0310-9956-ffa450edef68
2013-07-10 11:17:06 +00:00
Zhihong Yu 191ba57a27 HBASE-8534 Fix coverage for org.apache.hadoop.hbase.mapreduce (Aleksey Gorshkov)
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1488542 13f79535-47bb-0310-9956-ffa450edef68
2013-06-01 16:23:55 +00:00
anoopsamjohn 6ff1dc821d HBASE-8641 IndexBuilder example : CF name of the src table is hard coded
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1487909 13f79535-47bb-0310-9956-ffa450edef68
2013-05-30 16:12:05 +00:00
Michael Stack c6f4c60ac4 HBASE-1762 Remove concept of ZooKeeper from HConnection interface
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1480501 13f79535-47bb-0310-9956-ffa450edef68
2013-05-09 00:05:17 +00:00
Michael Stack df95e96647 HBASE-5472 LoadIncrementalHFiles loops forever if the target table misses a CF -- REVERT -- ANOTHER OVERCOMMIT
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1471247 13f79535-47bb-0310-9956-ffa450edef68
2013-04-24 04:45:44 +00:00
Michael Stack e5094baacf HBASE-5472 LoadIncrementalHFiles loops forever if the target table misses a CF -- REAPPLY
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1471246 13f79535-47bb-0310-9956-ffa450edef68
2013-04-24 04:44:09 +00:00
Jean-Daniel Cryans 0aadc0b0f4 HBASE-8390 Trunk/0.95 cannot simply compile against Hadoop 1.0
HBASE-8391  StochasticLoadBalancer doesn't call needsBalance


git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1471050 13f79535-47bb-0310-9956-ffa450edef68
2013-04-23 17:14:51 +00:00
Michael Stack 00f7bb46c5 HBASE-8187 trunk/0.95 tarball packaging
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1462606 13f79535-47bb-0310-9956-ffa450edef68
2013-03-29 18:49:42 +00:00
Michael Stack 130d95e78d HBASE-8005 DemoClient.cpp can not be built correctly
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1461177 13f79535-47bb-0310-9956-ffa450edef68
2013-03-26 15:12:24 +00:00
mbertozzi 16589af634 HBASE-8123 Replace HashMap/HashSet with TreeMap/TreeSet where byte[] is used as key
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1457089 13f79535-47bb-0310-9956-ffa450edef68
2013-03-15 20:04:08 +00:00
Michael Stack 466902ffde HBASE-8101 Cleanup: findbugs and javadoc warning fixes as well as making it illegal passing null row to Put/Delete, etc.
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1457024 13f79535-47bb-0310-9956-ffa450edef68
2013-03-15 17:11:32 +00:00
Michael Stack 71c9e007bd HBASE-8027 hbase-7994 redux; shutdown hbase-example unit tests
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1453984 13f79535-47bb-0310-9956-ffa450edef68
2013-03-07 18:13:38 +00:00
Michael Stack d40c5b2e83 HBASE-7994 Disable unit tests under hbase-examples; they fail too often up on jenkins; APPLIED BOTH ORIGINAL PATCH AND ADDENDUM IN ONE GO
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1453091 13f79535-47bb-0310-9956-ffa450edef68
2013-03-05 23:32:21 +00:00
nkeywal 62d1ad5fde HBASE-7968 Packaging of Trunk and 0.95 does not create the dependent jars in the lib folder
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1452261 13f79535-47bb-0310-9956-ffa450edef68
2013-03-04 11:30:49 +00:00
sershe 9b1ec93ee3 HBASE-7902 deletes may be removed during minor compaction, in non-standard compaction schemes
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1451314 13f79535-47bb-0310-9956-ffa450edef68
2013-02-28 19:46:24 +00:00
Michael Stack 05711f7553 HBASE-7940 Upgrade version to 0.97-SNAPSHOT in pom.xml files
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1450337 13f79535-47bb-0310-9956-ffa450edef68
2013-02-26 18:26:28 +00:00
eclark 24ebbcabc3 HBASE-7188 Move classes into hbase-client
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1449950 13f79535-47bb-0310-9956-ffa450edef68
2013-02-25 22:50:17 +00:00
Zhihong Yu e0e0c44e34 HBASE-7495 parallel seek in StoreScanner (Liang Xie)
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1447740 13f79535-47bb-0310-9956-ffa450edef68
2013-02-19 14:51:05 +00:00
mbertozzi a8658d520e HBASE-7802 Use the Store interface instead of HStore (coprocessor, compaction, ...)
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1445434 13f79535-47bb-0310-9956-ffa450edef68
2013-02-13 00:08:47 +00:00
Michael Stack ea245beac7 HBASE-7315 Remove support for client-side RowLocks
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1435747 13f79535-47bb-0310-9956-ffa450edef68
2013-01-19 22:45:11 +00:00
nkeywal 4e0af48fe4 HBASE-7508 Fix simple findbugs
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1430169 13f79535-47bb-0310-9956-ffa450edef68
2013-01-08 08:31:11 +00:00
Andrew Kyle Purtell a1079157ec HBASE-7351, HBASE-7399, HBASE-7406. Periodic health check chore (Vandana Ayyalasomayajula)
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1428141 13f79535-47bb-0310-9956-ffa450edef68
2013-01-03 02:12:24 +00:00
eclark abd334265e HBASE-7265 Make Maven skip module test properties consistent
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1416723 13f79535-47bb-0310-9956-ffa450edef68
2012-12-03 23:17:29 +00:00
larsh 726f822774 HBASE-7215 Put, Delete, Increment, Result, all all HBase M/R classes still implement/use Writable
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1415412 13f79535-47bb-0310-9956-ffa450edef68
2012-11-29 22:19:39 +00:00
eclark 9a030acad8 HBASE-7203 Move example CoProcessor into hbase-examples
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1413751 13f79535-47bb-0310-9956-ffa450edef68
2012-11-26 18:02:29 +00:00
Michael Stack 60caa2cedf HBASE-6793 Make hbase-examples module
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1406339 13f79535-47bb-0310-9956-ffa450edef68
2012-11-06 21:22:27 +00:00