Commit Graph

51 Commits

Author SHA1 Message Date
Vasudevan 6ac6ae3fa2 HBASE-19092 Make Tag IA.LimitedPrivate and expose for CPs (Ram)
Signed-off-by: Chia-ping Tsai, Anoop Sam John, Stack
2017-11-24 12:38:42 +05:30
Michael Stack eb17a2f285
HBASE-19299 Assert only one Connection is constructed when calculating splits in a MultiTableInputFormat
Adds a test suite that has one test in it. Does a bunch of mocking so
getSplits can run. Has counter in mocked Connection constructor so can
count how many Connections made during call to getSplits. Verified that
assert fails if more than one Connection made.
2017-11-20 09:01:56 -08:00
Apekshit Sharma e0c4f374b5 HBASE-19114 Split out o.a.h.h.zookeeper from hbase-server and hbase-client
- Moved DrainingServerTracker and RegionServerTracker to hbase-server:o.a.h.h.master.
- Moved SplitOrMergeTracker to oahh.master (because it depends on a PB)
- Moving hbase-client:oahh.zookeeper.*  to hbase-zookeeper module.  After HBASE-19200, hbase-client doesn't need them anymore (except 3 classes).
- Renamed some classes to use a consistent naming for classes - ZK instead of mix of ZK, Zk , ZooKeeper. Couldn't rename following public classes: MiniZooKeeperCluster, ZooKeeperConnectionException. Left RecoverableZooKeeper for lack of better name. (suggestions?)
- Sadly, can't move tests out because they depend on HBaseTestingUtility (which defeats part of the purpose - trimming down hbase-server tests. We need to promote more use of mocks in our tests)
2017-11-17 13:23:28 -08:00
zhangduo bc3542c0fb HBASE-19251 Merge RawAsyncTable and AsyncTable 2017-11-16 14:37:51 +08:00
Michael Stack 3ad300a2b0
HBASE-19245 MultiTableInputFormatBase#getSplits creates a Connection per Table
We make one Connection only instead of a Connection per table (Change is
just moving one line it involves right-shifting body of the function)
2017-11-14 21:48:06 -08:00
Tamas Penzes 7a69ebc73e HBASE-18601: Update Htrace to 4.2
Updated HTrace version to 4.2
Created TraceUtil class to wrap htrace methods. Uses try with resources.

Signed-off-by: Balazs Meszaros <balazs.meszaros@cloudera.com>
Signed-off-by: Michael Stack <stack@apache.org>
2017-11-13 10:38:36 -08:00
Mike Drob 0d4f33ca27 HBASE-19195 error-prone fixes for client, mr, and server 2017-11-08 12:04:46 -06:00
tedyu 50f30668b8 HBASE-19160 expose CellComparator as IA.Public - addendum fixes compilation for branch-2 2017-11-06 11:32:26 -08:00
Mike Drob cfddfcf23c HBASE-19160 expose CellComparator as IA.Public 2017-11-06 10:15:55 -06:00
Chia-Ping Tsai 061a73db6d HBASE-19185 ClassNotFoundException: com.fasterxml.jackson.* 2017-11-05 23:31:05 +08:00
Michael Stack f8c58930aa
HBASE-19179 Remove hbase-prefix-tree 2017-11-04 10:09:46 -07:00
Josh Elser 99cb148150 HBASE-19156 Remove vestiges of an unused regions-per-server CLI argument
Signed-off-by: Ted Yu <tedyu@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2017-11-02 15:00:25 -04:00
Apekshit Sharma d69570a485 HBASE-18925 Update mockito dependency from mockito-all:1.10.19 to mockito-core:2.1.0 for JDK8 support.
Last mockito-all release was in Dec'14. Mockito-core has had many releases since then.

From mockito's site:
- "Mockito does not produce the mockito-all artifact anymore ; this one was primarily
aimed at ant users, and contained other dependencies. We felt it was time to move on
and remove such artifacts as they cause problems in dependency management system like
maven or gradle."
- anyX() and any(SomeType.class) matchers now reject nulls and check type.
2017-11-01 14:38:50 -07:00
tedyu 20b7120afb HBASE-18870 Hbase Backup should set the details to MR job name (Vishal Khandelwal) 2017-10-30 19:57:58 -07:00
Michael Stack 250a8bc7ad
HBASE-18995 Move methods that are for internal usage from CellUtil to Private util class (Ramkrishna Vasudevan) 2017-10-27 17:51:32 -07:00
Tamas Penzes fc581270a8 HBASE-13346: Clean up Filter package for post 1.0 s/KeyValue/Cell/g
Added filterCell method to Filter, it calls filterKeyValue by default
Deprecated filterKeyValue in Filter, bud added default functionality to return Filter.ReturnCode.INCLUDE.
Added filterKeyValue (calling filterCell) to Filters extending FilterBase to be backward compatible.
renamed filterKeyValue to filterCell in all implementations
changed all internal calls to use filterCell instead of filterKeyValue
changed tests too

This way the change is simple and backward compatible.
Any existing custom filter should work since they override filterKeyValue
and the implementation is called by Filter.filterCell.

Moved FilterWrapper to hbase-server

Signed-off-by: anoopsamjohn <anoopsamjohn@gmail.com>
2017-10-27 11:17:53 +05:30
Chia-Ping Tsai 2a28ff840e HBASE-18754 Get rid of Writable from TimeRangeTracker 2017-10-24 15:14:14 +08:00
Mike Drob 34df2e665e HBASE-16338 Remove Jackson1 deps
* Change imports from org.codehaus to com.fasterxml
* Exclude transitive jackson1 from hadoop and others
* Minor test cleanup to add assert messages, fix some parameter order
* Add anti-pattern check for using jackson 1 imports
* Add explicit non-null serialization directive to ScannerModel
2017-10-23 15:24:51 -05:00
tedyu 998bc32ec9 HBASE-18945 Make a IA.LimitedPrivate interface for CellComparator - addendum fixes compilation for branch-2 2017-10-17 16:30:53 -07:00
Ramkrishna 2cb64fb467 HBSE-18945 Make a IA.LimitedPrivate interface for CellComparator (Ram) 2017-10-17 23:19:21 +05:30
Yu Li cf550c2be1 HBASE-19016 Coordinate storage policy property name for table schema and bulkload 2017-10-17 10:25:27 +08:00
Chia-Ping Tsai d2e4e0e1f3 HBASE-18997 Remove the redundant methods in RegionInfo 2017-10-14 23:32:48 +08:00
Huaxiang Sun 7a25ed6d7c HBASE-18355 Enable export snapshot tests that were disabled by Proc-V2 AM in HBASE-14614 2017-10-13 15:31:18 -07:00
Ramkrishna 66fb60d4a4 HBASE-18649 Deprecate KV Usage in MR to move to Cells in 3.0 (Ram) 2017-10-04 14:44:19 +05:30
Yi Liang 4475ba88c1 HBASE-16894 Create more than 1 split per region, generalize HBASE-12590
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2017-10-03 17:15:39 -07:00
libisthanks 0db82daa91 HBASE-18814 Make ScanMetrics enabled and add counter <HBase Counters, ROWS_SCANNED> into the MapReduce Job over snapshot
Signed-off-by: Ashu Pachauri <ashu@apache.org>
2017-10-02 18:25:34 -07:00
Chia-Ping Tsai 2cc1ea3d2e HBASE-18753 Introduce the unsynchronized TimeRangeTracker 2017-10-01 21:38:05 +08:00
libisthanks 7ee44a820f HBASE-18090 Improve TableSnapshotInputFormat to allow more multiple mappers per region
Signed-off-by: Ashu Pachauri <ashu@apache.org>
2017-09-30 02:11:22 -07:00
Ashu Pachauri c256532ce3 Revert "HBASE-18814 Improve TableSnapshotInputFormat to allow more multiple mappers per region" due to wrong jira id.
This reverts commit 55987efdcf.
2017-09-30 02:00:16 -07:00
libisthanks 55987efdcf HBASE-18814 Improve TableSnapshotInputFormat to allow more multiple mappers per region
Signed-off-by: Ashu Pachauri <ashu@apache.org>
2017-09-29 16:21:51 -07:00
zhangduo 2e4c1b6288 HBASE-18845 TestReplicationSmallTests fails after HBASE-14004 2017-09-29 14:32:33 +08:00
Andy Yang 0658252ed6 HBASE-13844 Move static helper methods from KeyValue into CellUtils
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2017-09-29 13:20:24 +08:00
Chia-Ping Tsai 6693f45faf HBASE-18839 Apply RegionInfo to code base 2017-09-28 20:19:41 +08:00
zhangduo d26b8f8ddd HBASE-18826 Use HStore instead of Store in our own code base and remove unnecessary methods in Store interface 2017-09-28 15:41:56 +08:00
Apekshit Sharma 0c883a23c5 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:45:51 -07:00
anoopsamjohn 0fcc84cadd HBASE-18298 RegionServerServices Interface cleanup for CP expose. 2017-09-27 11:02:57 +05:30
shaofengshi e97738f0c2 HBASE-18885 HFileOutputFormat2 hardcodes default FileOutputCommitter
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-09-26 19:58:51 -07:00
zhangduo 06d8a23531 HBASE-18825 Use HStoreFile instead of StoreFile in our own code base and remove unnecessary methods in StoreFile interface 2017-09-25 09:48:33 +08:00
Umesh Agashe 00d9e38479
HBASE-18832 Fixed LTT, removed references to deprecated HColumnDescriptor
Signed-off-by: Michael Stack <stack@apache.org>
2017-09-18 13:10:07 -07:00
Yi Liang a66f9dcda5
HBASE-18803: Mapreduce job get failed caused by NoClassDefFoundError: org/apache/commons/lang3/ArrayUtils
Signed-off-by: Michael Stack <stack@apache.org>
2017-09-18 12:36:05 -07:00
zhangduo 46d993b0ae HBASE-18453 CompactionRequest should not be exposed to user directly 2017-09-14 20:37:46 +08:00
Michael Stack 274bbb64c6 HBASE-14998 Unify synchronous and asynchronous methods in Admin and cleanup
This is based on patch sent me by Balazs Meszaros. The good stuff in
here is from him. This patch does less than his ambition. It changes
Admin class only. Can work on making AsyncAdmin cohere in a follow-on.

 * Deprecates getAlterStatus. Everywhere else we talk of 'modify' rather
   'alter' and should use Future returned from async instead.
 * isTableAvailable(TableName, byte [][]) has been deprecated to be
   removed; use the overrie instead. This is a weird method.
 * Changed listTableDescriptor to getDescriptor.
 * Renamed other like methods to have same pattern (deprecating the old):
    balancer => balance
    setBalancerRunning => balancerSwitch
    setNormalizerRunning => normalizerSwitch
    enableCatalogJanitor => catalogJanitorSwitch
    setCleanerChoreRunning => cleanerChoreSwitch
    setSplitOrMergeEnabled => splitOrMergeEnabledSwitch

 * Renamed (with deprecation of old) runCatalogScan => runCatalogJanitor.
 * Reviewed generated javadoc and made some edits; purged reference to
   hbase issues from our API, fixed param names, etc.
 * Made all the enable services methods have same pattern.
 * Renamed takeSnapshotAsync as snapshotAsync (with deprecation of old)
 * Renamed execProcedureWithRet as execProcedureWithReturn (with
   deprecation)

Signed-off-by: Michael Stack <stack@apache.org>
2017-09-13 17:19:56 -07:00
Sean Busbey d576e5a32d HBASE-17823 Migrate to Apache Yetus Audience Annotations
Includes partial backport of hbase-build-configuration module

Signed-off-by: Michael Stack <stack@apache.org>
Signed-off-by: Misty Stanley-Jones <misty@apache.org>
2017-09-12 23:15:50 -05:00
Michael Stack 1d278d3de6 HBASE-16479 Move WALEdit from hbase.regionserver.wal package to hbase.wal package 2017-09-11 14:42:35 -07:00
Michael Stack 7f70b6c8e3 HBASE-18769 Make CompareFilter use generic CompareOperator instead of
internal enum
2017-09-08 10:05:51 -07:00
Umesh Agashe bd219c0fb8 HBASE-18674 upgrading to commons-lang3
Signed-off-by: Michael Stack <stack@apache.org>
2017-09-05 09:46:49 -07:00
Chun-Hao Tang 27db1298f7 HBASE-18746 Throw exception with job.getStatus().getFailureInfo() when ExportSnapshot fails
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2017-09-05 02:05:11 +08:00
zhangduo a37417c254 HBASE-18699 Copy LoadIncrementalHFiles to another package and mark the old one as deprecated 2017-09-03 19:49:47 +08:00
Chia-Ping Tsai 96de8d71fc HBASE-15806 An endpoint-based export tool 2017-08-30 14:07:06 +08:00
Michael Stack 74c517a8bc HBASE-18698 MapreduceDependencyClasspathTool does not include hbase-server as a dependency
Move Driver to be the main-class in hbase-mapreduce jar rather than
in the hbase-server jar.

Reference the hbase-server and shaded protobuf so they get bundled
when you do 'hbase mapredcp'.
2017-08-29 13:10:24 -07:00