Commit Graph

177 Commits

Author SHA1 Message Date
Duo Zhang d30cc27097
HBASE-26081 Copy HBTU to hbase-testing-util, rename the HBTU related classes in hbase-server and mark them as IA.LimitedPrivate (#3478)
Signed-off-by: Michael Stack <stack@apache.org>
2021-07-19 09:29:08 +08:00
Andrew Purtell 335305e0cf
HBASE-25911 Replace calls to System.currentTimeMillis with EnvironmentEdgeManager.currentTime (#3302)
We introduced EnvironmentEdgeManager as a way to inject alternate clocks
for unit tests. In order for this to be effective, all callers that would
otherwise use System.currentTimeMillis() must call
EnvironmentEdgeManager.currentTime() instead, except the implementers of
EnvironmentEdge.

Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-06-01 09:57:48 -07:00
Pankaj d74ae15fa7
HBASE-25568 Upgrade Thrift jar to fix CVE-2020-13949 (#3043)
Signed-off-by: stack <stack@apache.com>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-03-16 17:16:20 +05:30
Sean Busbey e88f54b485
HBASE-25508 Add an example of using the thrift proxy in thrift-over-http mode
Closes #2888

Signed-off-by: stack <stack@apache.org>
2021-02-12 21:36:01 -06:00
Duo Zhang fbf00f9c28
HBASE-25451 Upgrade commons-io to 2.8.0 (#2825)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
Signed-off-by: stack <stack@apache.org>
2020-12-31 16:57:27 +08:00
Duo Zhang 1bb19e0cdd
HBASE-25037 Lots of thread pool are changed to non daemon after HBASE-24750 which causes trouble when shutting down (#2407)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2020-09-16 21:11:47 +08:00
Guanghao Zhang 54fe81eb56
HBASE-24912 Enlarge MemstoreFlusherChore/CompactionChecker period for unit test (#2285)
Signed-off-by: stack <stack@apache.org>
2020-08-21 12:41:20 +08:00
Viraj Jasani ea130249ae
HBASE-24750 : Adding default UncaughtExceptionHandler for Thread factories (ADDENDUM)
Closes #2231
2020-08-11 17:18:47 +05:30
Viraj Jasani 0b604d921a
HBASE-24750 : All ExecutorService should use guava ThreadFactoryBuilder
Closes #2196

Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
Signed-off-by: Ted Yu <tyu@apache.org>
2020-08-07 20:24:36 +05:30
Alexander Myasnikov f520c9d009
HBASE-24434 Fix building cpp-example DemoClient (#1775)
Changed boost::shared_ptr to std::shared_ptr for compatibility with apache thrift v0.13.

Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
2020-05-27 08:01:19 -07:00
Duo Zhang 8601416ee8
HBASE-24309 Avoid introducing log4j and slf4j-log4j dependencies for modules other than hbase-assembly (#1640)
Signed-off-by: stack <stack@apache.org>
2020-05-12 12:03:30 +08:00
Duo Zhang 9f52e6b725
HBASE-24249 Move code in FSHDFSUtils to FSUtils and mark related clas… (#1586)
Signed-off-by: stack <stack@apache.org>
2020-04-29 10:44:34 +08:00
Josh Elser 8774614a8c HBASE-23881 Ensure Netty client receives at least one response before considering SASL negotiation complete
The PLAIN mechanism test added in the Shade authentication example has
different semantics than GSSAPI mechanism -- the client reports that the
handshake is done after the original challenge is computed. The javadoc
on SaslClient, however, tells us that we need to wait for a response
from the server before proceeding.

The client, best as I can see, does not receive any data from HBase;
however the application semantics (e.g. throw an exception on auth'n
error) do not work as we intend as a result of this bug.

Extra trace logging was also added to debug this, should a similar error
ever happen again with some other mechanism.

Closes #1260

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
2020-04-26 10:24:07 +08:00
Duo Zhang c1f0634462 Revert "HBASE-23381 Ensure Netty client receives at least one response before considering SASL negotiation complete"
Incorrect jira issue number

This reverts commit 78eecd3a7d.
2020-04-26 10:23:40 +08:00
Andrew Purtell 43d7c2cda6
HBASE-24115 Relocate test-only REST "client" from src/ to test/ and mark Private (#1434)
Signed-off-by: Sean Busbey <busbey@apache.org>
Signed-off-by: Zach York <zyork@apache.org>
Signed-off-by: Reid Chan <reidchan@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
Signed-off-by: Josh Elser <elserj@apache.org>
2020-04-06 16:18:40 -07:00
Duo Zhang 6452396187
HBASE-24119 Polish the protobuf usage in hbase-examples (#1438)
Move the proto files only used by hbase-examples to hbase-examples, to show users how to make use of shaded hbase protos when implementing coprocessor.

Signed-off-by: Jan Hentschel <jan.hentschel@ultratendency.com>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2020-04-06 22:14:55 +08:00
Semen Komissarov 740e937210
HBASE-24056 Improve the layout of our proto files in hbase-protocol-shaded module (#1377)
proto files layout:
protobuf/client - client to server messages, client rpc service and protos, used in hbase-client exclusively;
protobuf/rest - hbase-rest messages;
protobuf/rpc - rpc and post-rpc tracing messages;
protobuf/server/coprocessor - coprocessor rpc services;
protobuf/server/coprocessor/example - coprocessors rpc services examples from hbase-examples;
protobuf/server/io - filesystem and hbase-server/io protos;
protobuf/server/maser - master rpc services and messages;
protobuf/server/region - region rpc services and messages (except client rpc service, which is in Client.proto);
protobuf/server/rsgroup - rsgroup protos;
protobuf/server/zookeeper - protos for zookeeper and ones used exclusively in hbase-zookeeper module;
protobuf/server - protos used across other server protos;
protobuf/test - protos used in tests;
protobuf/ - protos used across other protos, exclusive for hbase-mapreduce and hbase-backup, other protos.

Signed-off-by: Jan Hentschel <jan.hentschel@ultratendency.com>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2020-04-06 10:22:08 +08:00
Jan Hentschel 4ddf55d20a
HBASE-23843 Removed deprecated Scan(byte[]) from Scan
Signed-off-by: Viraj Jasani <vjasani@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2020-04-02 11:44:34 +02:00
Duo Zhang 5d4e020c3d
HBASE-23798 Remove hbase-prototcol module (#1360)
Signed-off-by: Jan Hentschel <jan.hentschel@ultratendency.com>
Signed-off-by: stack <stack@apache.org>
2020-03-30 09:54:59 +08:00
Josh Elser 78eecd3a7d HBASE-23381 Ensure Netty client receives at least one response before considering SASL negotiation complete
The PLAIN mechanism test added in the Shade authentication example has
different semantics than GSSAPI mechanism -- the client reports that the
handshake is done after the original challenge is computed. The javadoc
on SaslClient, however, tells us that we need to wait for a response
from the server before proceeding.

The client, best as I can see, does not receive any data from HBase;
however the application semantics (e.g. throw an exception on auth'n
error) do not work as we intend as a result of this bug.

Extra trace logging was also added to debug this, should a similar error
ever happen again with some other mechanism.

Closes #1260

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
2020-03-26 18:34:47 -04:00
Duo Zhang 76e3db6720
HBASE-23981 PBType which is marked as IA.Public references protobuf Message (#1323)
Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
2020-03-26 10:38:41 +08:00
Duo Zhang eface74407
HBASE-23799 Make our core coprocessors use shaded protobuf (#1280)
Signed-off-by: stack <stack@apache.org>
2020-03-23 08:47:02 +08:00
Michael Stack 3e1cf00c71 HBASE-23993 Use loopback for zk standalone server in minizkcluster (#1291)
hbase-zookeeper/src/main/java/org/apache/hadoop/hbase/zookeeper/MiniZooKeeperCluster.java
 Have client and server use loopback instead of 'localhost'

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Jan Hentschel <janh@apache.org>
2020-03-17 20:26:06 -07:00
WenFeiYi abf0a22259
HBASE-23971 protoc warns: "no protobuf syntax specified" (#1278)
Signed-off-by: stack <stack@apache.org>
2020-03-12 08:32:22 -07:00
Michael Stack aaf9a148a0 HBASE-23956 Use less resources running tests (#1266)
Add being able to configure netty thread counts. Enable socket reuse
(should not have any impact).

hbase-client/src/main/java/org/apache/hadoop/hbase/ipc/BlockingRpcConnection.java
 Rename the threads we create in here so they are NOT named same was
 threads created by Hadoop RPC.

hbase-client/src/main/java/org/apache/hadoop/hbase/ipc/DefaultNettyEventLoopConfig.java
hbase-client/src/main/java/org/apache/hadoop/hbase/ipc/NettyRpcClient.java
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/AsyncFSWAL.java
 Allow configuring eventloopgroup thread count (so can override for
 tests)

hbase-examples/src/main/java/org/apache/hadoop/hbase/client/example/HttpProxyExample.java
 Enable socket resuse.

hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/NettyRpcServer.java
 Enable socket resuse and config for how many threads to use.

hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
hbase-server/src/main/java/org/apache/hadoop/hbase/util/ModifyRegionUtils.java
 Thread name edit; drop the redundant 'Thread' suffix.

hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/HFileReplicator.java
 Make closeable and shutdown executor when called.

hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSink.java
 Call close on HFileReplicator

hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestReplicationBase.java
 HDFS creates lots of threads. Use less of it so less threads overall.

hbase-server/src/test/resources/hbase-site.xml
hbase-server/src/test/resources/hdfs-site.xml
 Constrain resources when running in test context.

hbase-server/src/test/resources/log4j.properties
 Enable debug on netty to see netty configs in our log

pom.xml
 Add system properties when we launch JVMs to constrain thread counts in
 tests

 Signed-off-by: Duo Zhang <zhangduo@apache.org>
2020-03-11 10:37:50 -07:00
Josh Elser 04d789f1a7 HBASE-23347 Allow custom authentication methods for RPCs
Decouple the HBase internals such that someone can implement
their own SASL-based authentication mechanism and plug it into
HBase RegionServers/Masters.

Comes with a design doc in dev-support/design-docs and an example in
hbase-examples known as "Shade" which uses a flat-password file
for authenticating users.

Closes #884

Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Reid Chan <reidchan@apache.org>
2020-01-16 10:27:28 -05:00
Guangxu Cheng b99f58304e
HBASE-20395 Displaying thrift server type on the thrift page (#811)
Signed-off-by: Lijin Bin <binlijin@apache.org>
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
2019-11-26 19:52:46 +08:00
Viraj Jasani 2f0b3ac91c HBASE-23093 Avoid Optional Anti-Pattern where possible (#673)
Signed-off-by: Peter Somogyi <psomogyi@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2019-10-11 15:28:50 +08:00
Viraj Jasani 064f5f1394 HBASE-22743 : ClientUtils for Demo Client classes (#413) 2019-07-28 10:01:45 +08:00
subrat.mishra 4157d1e3cd HBASE-22116 Added keytab and principal support for HttpDoAsClient.
Signed-off-by: Toshihiro Suzuki <brfrn169@gmail.com>
2019-06-08 14:39:11 +09:00
Jan Hentschel 65b8179c22 HBASE-22326 Fixed Checkstyle errors in hbase-examples 2019-05-27 22:11:39 +02:00
Jan Hentschel 12bcb879da HBASE-22199 Replaced UTF-8 String with StandardCharsets.UTF_8 2019-04-17 10:13:25 +02:00
Jan Hentschel f227eb7aac HBASE-22203 Reformatted DemoClient.java 2019-04-12 09:15:49 +02:00
Guanghao 89ce5d17e4
HBASE-22163 Should not archive the compacted store files when region warmup (#122)
* HBASE-22163 Should not archive the compacted store files when region warmup
2019-04-08 22:11:07 +08:00
Josh Elser ae0198084c HBASE-21872 Use a call that defaults to UTF-8 charset for string to byte encoding
Fixed commit message

Signed-off-by: Sean Busbey <busbey@apache.org>
2019-02-15 12:11:40 -05:00
Josh Elser d0e4912f67 Revert "HBASE-21782 Use a call that defaults to UTF-8 charset for string to byte encoding"
This reverts commit 3d4e1d57e5. Fixing incorrect Jira id.
2019-02-15 12:11:29 -05:00
Josh Elser 3d4e1d57e5 HBASE-21782 Use a call that defaults to UTF-8 charset for string to byte encoding
Signed-off-by: Sean Busbey <busbey@apache.org>
2019-02-14 12:02:49 -05:00
zhangduo 2b1b79f08b HBASE-21829 Use FutureUtils.addListener instead of calling whenComplete directly 2019-02-03 15:24:54 +08:00
TAK LON WU d4cc5eef43 HBASE-21318 Make RefreshHFilesClient runnable
Other than when user enables hbase.coprocessor.region.classes with
RefreshHFilesEndPoint, user can also run this client as tool runner
class/CLI and calls refresh HFiles directly.

Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-10-24 10:17:12 -07:00
Mingliang Liu 6dd5383033 HBASE-21071 HBaseTestingUtility::startMiniCluster() to use builder pattern
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2018-08-27 10:20:31 -07:00
subrat.mishra 49ae8549cf HBASE-21040 Replace call to printStackTrace() with proper logger call
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-08-15 08:29:54 -07:00
Mike Drob dbcc80c9e7
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 12:59:36 -05:00
eshcar 2d2d9957a7 HBASE-20542 ADDENDUM: test fix 2018-07-03 14:01:00 +03:00
Ashish Singhi 7da0015a3b 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:11:19 +05:30
Sean Busbey 8ba2a7eeb9 HBASE-20544 Make HBTU default to random ports.
Signed-off-by: Umesh Agashe <uagashe@cloudera.com>
Signed-off-by: Josh Elser <elserj@apache.org>
2018-05-09 23:35:20 -07:00
Jan Hentschel 64ccd2b295 HBASE-13300 Fixed casing in set/getTimeStamp for Mutations 2018-03-23 17:23:22 -07:00
Michael Stack aadb2f0837 HBASE-20224 Web UI is broken in standalone mode; ADDENDUM 2018-03-22 21:33:04 -07:00
Chia-Ping Tsai a6eeb26cc0 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:10:23 +08:00
Chia-Ping Tsai 4f2133ee32 HBASE-20119 Introduce a pojo class to carry coprocessor information in order to make TableDescriptorBuilder accept multiple cp at once
Signed-off-by: Ted Yu <yuzhihong@gmail.com>
Signed-off-by: Michael Stack <stack@apache.org>
2018-03-16 01:21:38 +08:00
zhangduo 408b41ba6c HBASE-19964 Addendum retry on major compaction 2018-02-10 20:07:46 +08:00