Commit Graph

229 Commits

Author SHA1 Message Date
Josh Elser 4b0466b42c HBASE-21960 Ensure RESTServletContainer used by RESTServer
Signed-off-by: stack <stack@apache.org>
2019-02-26 22:16:52 -05:00
Guangxu Cheng 45cd6ae2d9 HBASE-21174 [REST] Failed to parse empty qualifier in TableResource#getScanResource
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-09-12 10:37:40 +08:00
Guangxu Cheng 1a324e3a71 HBASE-21132 return wrong result in rest multiget 2018-09-02 14:27:50 +08:00
Mingliang Liu a0cbfb8ea6 HBASE-21071 HBaseTestingUtility::startMiniCluster() to use builder pattern
Signed-off-by: zhangduo <zhangduo@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2018-08-27 10:22:04 -07:00
Sean Busbey cf4d23f8d4 HBASE-21076 refactor TestTableResource to ask for a multi-region table instead of relying on a split operation.
Also correct how the test does string conversion for region names that include non-printable characters.

includes addendum.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Ted Yu <tyu@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>

(cherry picked from commit 6b18e39f30)
(cherry picked from commit 63f2d3cbdc)
2018-08-22 19:17:05 -05:00
Nihal Jain 16af11bb10 HBASE-20614 REST scan API with incorrect filter text file throws HTTP 503 Service Unavailable error
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-08-22 16:07:55 -07:00
Bosko Devetak e0bba12fe4 HBASE-21007 Memory leak in HBase REST server
Close the scanner leak in rest server when using the limit number of rows.

Example: when using uris like

        /sometable/*?limit=5&startrow=eGlND&endrow=eGlNE

where the scan range has more rows than the limit, the
rest server will start leaking memmory.

Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-08-07 12:40:18 -07:00
Mike Drob 2a9162a503
HBASE-20884 Replace Base64 with j.u.Base64
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-07-13 13:00:23 -05:00
Ashish Singhi 805e2db3e2 HBASE-20590 REST Java client is not able to negotiate with the server in the secure mode
Signed-off-by: Ashish Singhi <ashishsinghi@apache.org>
2018-06-04 14:13:42 +05:30
Ashish Singhi 32b114e86b HBASE-20004 Client is not able to execute REST queries in a secure cluster
Signed-off-by: Ashish Singhi <ashishsinghi@apache.org>
2018-05-10 22:47:44 +05:30
Sean Busbey 61f96b6ffa HBASE-20544 Make HBTU default to random ports.
Signed-off-by: Umesh Agashe <uagashe@cloudera.com>
Signed-off-by: Josh Elser <elserj@apache.org>

 Conflicts:
	hbase-backup/src/test/resources/hbase-site.xml
	hbase-spark-it/src/test/resources/hbase-site.xml
	hbase-spark/src/test/resources/hbase-site.xml
2018-05-09 23:45:39 -07:00
Pankaj Kumar a761f175ab HBASE-20231 Not able to delete column family from a row using RemoteHTable
Signed-off-by: Ashish Singhi <ashishsinghi@apache.org>
2018-04-04 10:13:34 +05:30
Josh Elser c3d82a283d HBASE-20223 Update to hbase-thirdparty 2.1.0
Remove commons-cli and commons-collections4 use. Account
for the newer internal protobuf version of 3.5.1.

Signed-off-by: Michael Stack <stack@apache.org>
Signed-off-by: Mike Drob <mdrob@apache.org>
2018-03-26 16:07:39 -04:00
Jan Hentschel 52014b9423 HBASE-13300 Fixed casing in set/getTimeStamp for Mutations 2018-03-23 17:23:55 -07:00
Chia-Ping Tsai 6aba045aae HBASE-19504 Add TimeRange support into checkAndMutate
Signed-off-by: Michael Stack <stack@apache.org>
2018-03-24 00:05:22 +08:00
Umesh Agashe 96d63fee11 HBASE-20224 Web UI is broken in standalone mode
Changes for HBASE-20027 seem to cause UI not showing up on default port in standalone mode. For concurrent
unit test execution, individual tests can set hbase.localcluster.assign.random.ports to true or modify
test/resources/hbase-site.xml.
2018-03-22 20:28:08 -07:00
Michael Stack 79e4c9d925
Revert "HBASE-20224 Web UI is broken in standalone mode"
Broke shell tests.

This reverts commit dd9fe813ec.
2018-03-22 10:47:47 -07:00
Umesh Agashe dd9fe813ec HBASE-20224 Web UI is broken in standalone mode
Changes for HBASE-20027 seem to cause UI not showing up on default port in standalone mode. For concurrent
unit test execution, individual tests can set hbase.localcluster.assign.random.ports to true or modify
test/resources/hbase-site.xml.
2018-03-22 06:52:51 -07:00
Chia-Ping Tsai dd9e46bbf5 HBASE-20212 Make all Public classes have InterfaceAudience category
Signed-off-by: tedyu <yuzhihong@gmail.com>
Signed-off-by: Michael Stack <stack@apache.org>
2018-03-22 18:09:54 +08:00
Duo Zhang bbf3bae72a
HBASE-19873 Add a CategoryBasedTimeout ClassRule for all UTs 2018-01-29 12:41:14 -08:00
Peter Somogyi 72f4e98ed1 HBASE-19846 Fix findbugs and error-prone warnings in hbase-rest (branch-2)
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-01-25 07:30:24 -08:00
Guangxu Cheng 3fa3dcd9f9 HBASE-19483 Add proper privilege check for rsgroup commands
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-01-09 08:11:07 -08:00
Chia-Ping Tsai 654edc5fa5 HBASE-19596 RegionMetrics/ServerMetrics/ClusterMetrics should apply to all public classes 2018-01-04 13:05:21 +08:00
Mike Drob 64cb777a8a HBASE-19552 find-and-replace thirdparty offset 2017-12-28 12:01:25 -06:00
Chia-Ping Tsai 97f0aad66e HBASE-19626 Rename Cell.DataType to Cell.Type 2017-12-28 12:59:28 +08:00
Chia-Ping Tsai d4af099e9e HBASE-19496 Reusing the ByteBuffer in rpc layer corrupt the ServerLoad and RegionLoad 2017-12-22 18:58:08 +08:00
Balazs Meszaros 992b5d8630 HBASE-10092 Move up on to log4j2
Changes:
- replaced commons-logging to slf4j everywhere
- log.XXX(Throwable) calls were replaced with log.XXX(t.toString(), t)
- log.XXX(Object) calls were replaced with log.XXX(Objects.toString(obj))
- log.fatal() calls were replaced with log.error(HBaseMarkers.FATAL, ...)
- programmatic log4j configuration was removed from the unit test

This commit does not affect the current logging configurations, because log4j
is still on the classpath. slf4j-log4j12 binds log4j to slf4j.

Signed-off-by: Michael Stack <stack@apache.org>
2017-12-20 22:58:12 -08:00
Michael Stack 495bedea35
HBASE-19122 Suspect methods on Cell to be deprecated 2017-12-18 15:23:03 -08:00
Chia-Ping Tsai 33d48754f5
HBASE-19462 Deprecate all addImmutable methods in Put
Signed-off-by: Michael Stack <stack@apache.org>
2017-12-14 14:18:04 -08:00
Peter Somogyi 941acc5c05 HBASE-19213 Align check and mutate operations in Table and AsyncTable
- Deprecates old checkAnd*() operations in Table
- Adds Table#CheckAndMutateBuilder and implements it in HTable

Commiter note: When committing the patch, noticed redundant {@inheritDoc} being added in HTable.
Removed new and olds ones.

Signed-off-by: Apekshit Sharma <appy@apache.org>
2017-12-12 20:46:39 -08:00
Chia-Ping Tsai 2245dfc558 HBASE-12444 Total number of requests overflow because it's int 2017-12-07 18:42:32 +08:00
Peter Somogyi 12efae4829 HBASE-19351 Deprecated is missing in Table implementations
Signed-off-by: Michael Stack <stack@apache.org>
2017-11-28 11:18:07 -08:00
tedyu 76b9d4617c HBASE-19210 TestNamespacesInstanceResource fails 2017-11-14 11:05:36 -08:00
Mike Drob cd681f26bc HBASE-19240 more error-prone results 2017-11-12 19:47:38 -06: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
Peter Somogyi 0ad8a6f51b HBASE-19031 Align exist method in Table and AsyncTable interfaces
Deprecate Table::existsAll method and add Table::exists.
RemoteHTable already had a deprecated exists method, remove that
and implement the new exists from Table interface.

Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2017-10-29 07:17:41 +08:00
Peter Somogyi 5dadfdaa58
HBASE-19029 Align RPC timout methods in Table and AsyncTableBase
As part of HBASE-18978 the rpc timeout methods gets aligned
between Table and AsyncTable interfaces.
Deprecate the following methods in Table:
- int getRpcTimeout()
- int getReadRpcTimeout()
- int getWriteRpcTimeout()
- int getOperationTimeout()

Add the following methods to Table:
- long getRpcTimeout(TimeUnit)
- long getReadRpcTimeout(TimeUnit)
- long getWriteRpcTimeout(TimeUnit)
- long getOperationTimeout(TimeUnit)

Fix some javadoc issues.

Signed-off-by: Michael Stack <stack@apache.org>
2017-10-25 09:55:16 -07:00
Apekshit Sharma d6982414c1 HBASE-19053 Split out o.a.h.h.http from hbase-server into a separate module
Change-Id: Ie3a688b789104df7feaf34ac9fb326a79d6a3960
2017-10-23 23:25:26 -07: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
Sean Busbey 12f9398038 HBASE-19020 HBase Rest test for xml parsing external entities should not rely on implementation of java XML APIs.
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2017-10-18 09:46:35 -05:00
Chia-Ping Tsai e047f518ef HBASE-18897 Substitute MemStore for Memstore 2017-10-02 21:10:11 +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
Guangxu Cheng 7e9534746c HBASE-18880 Failed to start rest server if the value of hbase.rest.threads.max is too small.
Signed-off-by: Michael Stack <stack@apache.org>
2017-09-26 20:39:27 -07:00
Reid Chan dc1db8c5b3 HBASE-18609 Apply ClusterStatus#getClusterStatus(EnumSet<Option>) in code base
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2017-09-14 01:00:19 +08: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
Yun Zhao 7af0c44af3 HBASE-18662 The default values for many configuration items in the code are not consistent with hbase-default.xml
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2017-09-11 21:12:11 +08:00
Chia-Ping Tsai 1ee4923730 Revert "HBASE-18662 The default values for many configuration items in the code are not consistent with hbase-default.xml"
need more checks
This reverts commit 89f978beb8.
2017-09-09 22:55:33 +08:00
Yun Zhao 89f978beb8 HBASE-18662 The default values for many configuration items in the code are not consistent with hbase-default.xml
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2017-09-09 18:11:14 +08:00
Michael Stack 7f70b6c8e3 HBASE-18769 Make CompareFilter use generic CompareOperator instead of
internal enum
2017-09-08 10:05:51 -07:00
Apekshit Sharma 56cba5e450 HBASE-14997 Move compareOp and Comparators out of filter to client package
Add a new generic CompareOperator enum and use it instead of the filter
CompareOp enum everywhere BUT inside CompareFilter.
2017-09-07 11:03:22 -07:00
Guangxu Cheng d7a74a75a1 HBASE-17713 the interface '/version/cluster' with header 'Accept: application/json' return is not JSON but plain text
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-09-06 07:31:56 -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
Andy Yang d26e22d75b HBASE-3935 HServerLoad.storefileIndexSizeMB should be changed to storefileIndexSizeKB
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2017-08-29 13:43:27 +08:00
Apekshit Sharma 59d034106f 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-26 01:55:33 -07:00
Guangxu Cheng e58670683b HBASE-18671 Support Append/Increment in rest api
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-08-25 07:57:39 -07:00
Guangxu Cheng 08212e50ff HBASE-18647 Parameter cacheBlocks does not take effect in REST API for scan
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-08-24 08:09:25 -07:00
Michael Stack 9bb574c351 HBASE-18615 hbase-rest tests fail in hbase-2.0.0-alpha2
This makes branch-2 same as master branch. Makes hbase-rest tests pass.
Adds note on the jackson1 feature.
2017-08-21 22:28:50 -07:00
Michael Stack 62d2cd0d07 Revert "HBASE-18615 hbase-rest tests fail in hbase-2.0.0-alpha2"
Pushed prematurely. Revert.

This reverts commit 0be04ab4a1.
2017-08-21 17:23:57 -07:00
Michael Stack 0be04ab4a1 HBASE-18615 hbase-rest tests fail in hbase-2.0.0-alpha2
This makes branch-2 same as master branch. Makes hbase-rest tests pass.
Adds note on the jackson1 feature.

Signed-off-by: Michael Stack <stack@apache.org>
2017-08-21 17:23:21 -07:00
Michael Stack 8c85b6b853 Revert "Revert "HBASE-18518 Remove jersey1* dependencies form project and jersey1* jars from lib dir; ADDENDUM on branch-2 so master and branch-2 are same""
This reverts commit 3ac60fc0d8.
This is a revert of an addendum subsequent testing showed as a mistake!
The addendum caused us to deviate from master, not bring us to parity
with master as claimed. My bad.
2017-08-18 10:51:37 -07:00
Michael Stack 3ac60fc0d8 Revert "HBASE-18518 Remove jersey1* dependencies form project and jersey1* jars from lib dir; ADDENDUM on branch-2 so master and branch-2 are same"
This reverts commit 6f9af9a924.
2017-08-18 10:13:49 -07:00
Michael Stack 6f9af9a924 HBASE-18518 Remove jersey1* dependencies form project and jersey1* jars from lib dir; ADDENDUM on branch-2 so master and branch-2 are same 2017-08-18 10:09:23 -07:00
Samir Ahmic eca69eb2c4 HBASE-18518 Remove jersey1* dependencies form project and jersey1* jars from lib dir.
This patch removes jersey1 dependencies form hbase REST project also
removes dead code in hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/ResourceConfig.java and prevents jersey1 jars in lib dir. RESTApiClusterManager.java is modified to use jersey2.

Signed-off-by: Michael Stack <stack@apache.org>
2017-08-17 22:17:44 -07:00
Mike Drob 0ded122b1e HBASE-18303 Clean up @Parameter boilerplate 2017-08-14 14:24:37 -05:00
Michael Stack add9974515 HBASE-18595 Set version in branch-2 from 2.0.0-alpha2-SNAPSHOT to 2.0.0-alpha2 2017-08-14 10:28:44 -07:00
Guanghao Zhang 0c16bb591b HBASE-18500 Performance issue: Don't use BufferedMutator for HTable's put method 2017-08-11 16:38:08 +08:00
Chia-Ping Tsai 18d29e4794 HBASE-18315 Eliminate the findbugs warnings for hbase-rest 2017-08-08 10:47:15 +08:00
Michael Stack ee70b1d2e0 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:42:38 -07:00
Michael Stack d5c6e11016 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:41:52 +01:00
Peter Somogyi 9300fbc9c1 HBASE-16312 update jquery version
Upgrade jquery from 1.8.3 to 3.2.1 in hbase-server and hbase-thrift modules

Change-Id: I92d479e9802d954f607ba409077bc98581e9e5ca

Signed-off-by: Michael Stack <stack@apache.org>
2017-07-20 10:08:12 +01:00
Chia-Ping Tsai 53ec9c5bd3 HBASE-18241 Change client.Table, client.Admin, Region, Store, and HBaseTestingUtility to not use HTableDescriptor or HColumnDescriptor 2017-07-08 17:00:15 +08:00
Michael Stack b2b5cd6de6 Revert "HBASE-17056 Remove checked in PB generated files Selective add of dependency on"
Build is unstable and has interesting issues around CLASSPATH. Revert
for now.

This reverts commit 1049025e1d.
2017-07-06 21:48:41 -07:00
Michael Stack 1049025e1d 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 21:38:23 -07:00
tedyu ac1024af21 HBASE-16356 REST API scanner: row prefix filter and custom filter parameters are mutually exclusive (Ben Watson) 2017-05-09 07:58:20 -07:00
QilinCao 0d0ccc38fe HBASE-18007 Clean up rest module code
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-05-06 07:01:44 -07:00
Jan Hentschel 17007685c1 HBASE-13074 Cleaned up usage of hbase.master.lease.thread.wakefrequency
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2017-05-02 23:12:02 +08:00
Niels Basjes fc68f23a48 HBASE-17962 Improve documentation on Rest interface
Signed-off-by: Sean Busbey <busbey@apache.org>
2017-04-28 11:28:29 -05:00
Chia-Ping Tsai 053e61541e HBASE-15583 Any HTableDescriptor we give out should be immutable 2017-04-27 03:22:29 +08:00
zhangduo a66d491892 HBASE-17857 Remove IS annotations from IA.Public classes 2017-04-05 15:34:06 +08:00
zhangduo a49bc58a54 HBASE-17584 Expose ScanMetrics with ResultScanner rather than Scan 2017-03-15 17:48:58 +08: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
tedyu de23d306eb HBASE-17649 REST API for scan should return 410 when table is disabled 2017-02-15 07:50:57 -08:00
tedyu 539f97c020 HBASE-17603 REST API for scan should return 404 when table does not exist 2017-02-13 08:40:49 -08:00
Balazs Meszaros e68ab09d5e HBASE-17566 Jetty upgrade fixes
Fix issues caused by HBASE-12894 Upgrade Jetty to 9.2.6 commit.

- removed Jetty 6.x dependencies (org.mortbay.jetty.*)
- corrected @Ignore-d unit tests

Signed-off-by: Michael Stack <stack@apache.org>
2017-01-30 11:56:21 -08:00
Michael Stack ffe7dac53d Revert "Revert "HBASE-12894 Upgrade to Jetty 9 for REST / Info Server / Thrift Http Server""
This reverts commit 0ac5d4a717.
This is a revert of a revert; i.e. a reapplication!
Fixes for breakage that comes in with this patch is in a follow-on.
2017-01-30 11:54:54 -08:00
Jan Hentschel aff8de8397 HBASE-17555 Changed calls to deprecated getHBaseAdmin to getAdmin
Signed-off-by: Michael Stack <stack@apache.org>
2017-01-28 21:41:25 -08:00
Michael Stack 0ac5d4a717 Revert "HBASE-12894 Upgrade to Jetty 9 for REST / Info Server / Thrift Http Server"
This reverts commit 59fd6eb7f6.
2017-01-25 22:55:18 -08:00
Yang Guang 59fd6eb7f6 HBASE-12894 Upgrade to Jetty 9 for REST / Info Server / Thrift Http Server 2017-01-24 23:37:12 -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
Josh Elser 6fecf55a7e HBASE-17424 Disable external entity parsing in RemoteAdmin 2017-01-06 16:38:50 -05:00
Jan Hentschel 7572e96e3a HBASE-17385 Change usage documentation from bin/hbase to hbase in various tools
Signed-off-by: Enis Soztutar <enis@apache.org>
2016-12-29 15:20:43 -08:00
tedyu 72438c0223 HBASE-17080 rest.TestTableResource fails in master branch (ChiaPing Tsai) 2016-11-18 10:08:37 -08:00
Umesh Agashe 281bf9a222 HBASE-17014 Added clearly marked log messages for start and shutdown of services HMaster, HRegionServer, ThriftServer, RESTServer. Also changed the log level for RPCServer responder starting log message to debug.
Signed-off-by: Michael Stack <stack@apache.org>
2016-11-03 11:09:55 -07:00
tedyu 10840a51e8 HBASE-16145 MultiRowRangeFilter constructor shouldn't throw IOException (Konstantin Ryakhovskiy) 2016-10-17 16:06:10 -07:00
tedyu 73e9456702 HBASE-16326 CellModel / RowModel should override 'equals', 'hashCode' and 'toString' (Minwoo Kang) 2016-10-17 12:42:06 -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
Ben Lau 4b05f40984 HBASE-16662 Fix open POODLE vulnerabilities
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2016-09-22 14:27:07 -07:00
Keith David Winkler 7145e46b7a HBASE-7621 REST client (RemoteHTable) doesn't support binary row keys
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2016-08-19 12:08:07 -07:00