Commit Graph

19440 Commits

Author SHA1 Message Date
Duo Zhang 9ab0b1504f
HBASE-27211 Data race in MonitoredTaskImpl could cause split wal failure (#4630)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
Signed-off-by: Xin Sun <ddupgs@gmail.com>
2022-07-18 19:25:06 +08:00
SiCheng-Zheng ff8eb59709
HBASE-27144 Add special rpc handlers for bulkload operations (#4558)
Co-authored-by: SiCheng-Zheng <zhengsicheng@jd.com>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-07-17 21:21:58 +08:00
Bryan Beaudreault 70a2ee1716
HBASE-27053 IOException during caching of uncompressed block to the block cache (#4610)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Reviewed-by: wenwj0 <wenweijian2@huawei.com>
2022-07-16 17:30:55 -04:00
chenglei 02f26368e2
HBASE-27207 ConnectionUtils.allOf should be moved to FutureUtils (#4627)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-07-15 17:04:03 +08:00
Andrew Purtell 01b45e285d Amend HBASE-27194 Add test coverage for SimpleRpcServer (#4616)
When backporting to branch-2 it was discovered that the order of tear
down operations requires the KDC to be torn down first, although on
master branch the original code did not produce the same errors (a NPE
in KDC#stop). Forward port the difference for maintainability.

Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-07-13 11:23:07 -07:00
Andrew Purtell 84f0d145d7
HBASE-27194 Add test coverage for SimpleRpcServer (#4616)
Add test coverage for SimpleRpcServer.

Improve the way we test both SimpleRpcServer and NettyRpcServer. Use
LoadTestKVGenerator to generate random values with varying sizes between
1000 bytes and 1M bytes, and also to verify them when reading the values
back.

Add secure test coverage for both SimpleRpcServer and NettyRpcServer.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2022-07-13 09:28:30 -07:00
Andrew Purtell ef1641d277
HBASE-27088 IntegrationLoadTestCommonCrawl async load improvements (#4488)
* HBASE-27088 IntegrationLoadTestCommonCrawl async load improvements

- Use an async client and work stealing executor for parallelism during loads.
- Remove the verification read retries, these are not that effective during
  replication lag anyway.
- Increase max task attempts because S3 might throttle.
- Implement a side task that exercises Increments by extracting urls from
  content and updating a cf that tracks referrer counts. These are not
  validated at this time. It could be possible to log the increments, sum
  them with a reducer, and then verify the total, but this is left as a
  future exercise.

Signed-off-by: Viraj Jasani <vjasani@apache.org>

* Sum RPC time for writes (loader) and reads (verifier) and mutation bytes submitted. Expose as job counters.

* Fix an issue with completion chaining

* Pause loading if too many operations are in flight
2022-07-13 09:01:21 -07:00
Duo Zhang 2662607b71
HBASE-27193 TestZooKeeper is flaky (#4615)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2022-07-13 10:32:01 +08:00
Andrew Purtell 7cb7100de5
HBASE-27161 Improve TestMultiRespectsLimits (#4586)
TestMultiRespectLimits submits a put with an empty value. This appears
to not be what was intended. Instead, use a single byte.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-07-12 11:19:35 -07:00
Andrew Purtell ed32043da0
HBASE-27097 SimpleRpcServer is broken (#4613)
Replace BufferChain#write(channel,int) with a simpler #write(channel)
implementation that does not attempt to "chunk" data to be written. This
method was used exclusively by SimpleRpcServer. The code was unnecessarily
complex and caused short writes when values were large, so was corrected
and simplified. Any difference in performance from this change will be
limited to SimpleRpcServer. Testing under load confirms the fix and does
not show significant regression.

SimpleRpcServer and its related code is now also marked as @Deprecated.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2022-07-12 11:07:23 -07:00
Duo Zhang 648bb6d0eb
HBASE-27192 The retry number for TestSeparateClientZKCluster is too small (#4614)
Signed-off-by: GeorryHuang <huangzhuoyue@apache.org>
2022-07-12 19:08:41 +08:00
Bryan Beaudreault 886e31952f
HBASE-27149 Server should close scanner if client times out before results are ready (#4604)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-07-11 22:22:00 -04:00
Bryan Beaudreault 6e66e78177
HBASE-27188 Report maxStoreFileCount in jmx (#4609)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-07-11 22:11:58 -04:00
Bryan Beaudreault 779c4e2316
HBASE-27186 Report block cache size metrics separately for L1 and L2 (#4608)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-07-11 22:00:04 -04:00
Duo Zhang 5bc8670322
HBASE-27189 NettyServerRpcConnection is not properly closed when the netty channel is closed (#4611)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2022-07-12 09:40:19 +08:00
Jinhu Wu f3545cd73a
HBASE-27190 Add some docs about exporting and importing snapshots using Aliyun object storage service(OSS) (#4612)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-07-11 21:07:11 +08:00
Nick Dimiduk a238ed2785
HBASE-27182 Rework tracing configuration
* Take advantage of the fact that OpenTelemetry can read its configuration from environment
  variables and make use of this where possible, only falling back to passing properties into the
  process launch configuration when it's necessary. DRY up tracing configuration and make it
  easier to manage in a container environment.
* Replace `HBASE_TRACE_OPTS`, which used to act as both a feature flag and a baseline for
  configuration shared across processes. Instead, use `HBASE_OTEL_TRACING_ENABLED` as a feature
  flag, and let configuration reuse be handled via the environment variables that otel supports
  naively.
* Add further explanation for how to write your configuration for our different deployment
  modes (standalone, pseudo-distributed, fully distributed) and in different environments.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-07-11 14:37:05 +02:00
Norman Maurer 2197b3806b
HBASE-27180 Fix multiple possible buffer leaks (#4597)
* Fix multiple possible buffer leaks

Motivation:

When using ByteBuf you need to be very careful about releasing it as otherwise you might leak data. There were various places in the code-base where such a leak could happen.

Modifications:

- Fix possible buffer leaks
- Ensure we call touch(...) so its easier to debug buffer leaks

Result:

Fix buffer leaks

* Formatting

* Revert some changes as requested

* revert touch

* Also release checksum and header buffers

Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-07-08 08:19:45 +08:00
Narasimha Sharma 22618dadfe
HBASE-18045 Added default SSH connection timeout in Integration tests (#4450) 2022-07-07 10:17:04 -07:00
Bryan Beaudreault 6886d02a91
HBASE-27078 Allow configuring a separate timeout for meta scans (#4557)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-07-07 10:02:14 -04:00
Duo Zhang 816e919e95
HBASE-26708 Netty leak detected and OutOfDirectMemoryError due to direct memory buffering with SASL implementation (#4596)
Co-authored-by: Norman Maurer <norman_maurer@apple.com>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2022-07-07 15:55:26 +08:00
Duo Zhang 1643c45770 HBASE-27157 Addendum fix compile error after revert 2022-07-07 10:26:13 +08:00
Duo Zhang 0116aff9c0 Revert "HBASE-27157 Potential race condition in WorkerAssigner (#4577)"
This reverts commit f76d8554ca.
2022-07-07 08:36:21 +08:00
Ujjawal a31cc931fd
HBASE-27175 - Failure to cleanup WAL split dir log should be at INFO level (#4593)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2022-07-06 16:32:52 -07:00
Bryan Beaudreault b9706916cc
HBASE-27048 Server side scanner time limit should account for time in queue (#4562)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-07-06 11:57:37 -04:00
Nick Dimiduk 1b5adbecfc
HBASE-27172 Upgrade OpenTelemetry dependency to 1.15.0
- the agent jar dropped the `-all` classifier after 1.8.0

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-07-06 13:54:41 +02:00
wenwj0 ad13675db3
HBASE-27101 support commons-crypto version 1.1.0 (#4506)
Co-authored-by: wenwj0 <wenweijian2@huawei.com>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-07-06 18:57:15 +08:00
Duo Zhang 6f4a0476f2 HBASE-27148 Addendum uncomment the shutdown code in TestVerifyReplicationCrossDiffHdfs 2022-07-06 14:48:08 +08:00
Duo Zhang 41972cb460
HBASE-27148 Move minimum hadoop 3 support version to 3.2.3 (#4561)
Signed-off-by: Xin Sun <ddupgs@gmail.com>
2022-07-06 12:49:47 +08:00
Ruanhui f76d8554ca
HBASE-27157 Potential race condition in WorkerAssigner (#4577)
Co-authored-by: huiruan <huiruan@tencent.com>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Lijin Bin <binlijin@apache.org>
2022-07-06 10:59:13 +08:00
tianhang 6031a3a8d4
HBASE-27171 Fix Annotation Error in HRegionFileSystem (#4588)
Co-authored-by: Tang Tianhang <tianhang.tang@shopee.com>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-07-06 10:58:34 +08:00
Bryan Beaudreault f3f292fad4
HBASE-27170 ByteBuffAllocator leak when decompressing blocks near minSizeForReservoirUse (#4592)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2022-07-04 16:18:45 -04:00
Andrew Purtell 724bf7837a HBASE-27174 Update downloads.xml for release 2.4.13
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-07-01 12:54:21 -07:00
Duo Zhang 03c23beb57
HBASE-27169 TestSeparateClientZKCluster is flaky (#4587)
Signed-off-by: Xin Sun <ddupgs@gmail.com>
2022-07-01 22:09:01 +08:00
Ishika acfbc3ff7d
HBASE-26218 Add logs in Canary tool (#4501)
Co-authored-by: Ishika Soni <isoni@isoni-ltmag9r.internal.salesforce.com>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-06-30 21:53:20 +08:00
Duo Zhang c07c393565
HBASE-27164 Add 3.0.0-alpha-3 to download page (#4583)
Signed-off-by: Xin Sun <ddupgs@gmail.com>
2022-06-29 11:07:33 +08:00
Duo Zhang 9bcb7493e0
HBASE-27165 Set version as 3.0.0-alpha-4-SNAPSHOT in master (#4582)
Signed-off-by: Xin Sun <ddupgs@gmail.com>
2022-06-29 11:04:21 +08:00
Ruanhui 9c2bc55350
HBASE-27158 Add namespace column family to UNDELETABLE_META_COLUMNFAMILIES (#4578)
Co-authored-by: huiruan <huiruan@tencent.com>
Signed-off-by: Pankaj Kumar <pankajkumar@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-06-29 10:27:53 +08:00
Andrew Purtell ca34bdccc3
HBASE-27166 WAL value compression minor improvements (#4584)
A larger IO buffer for absorbing WALCodec writes can improve the compression
ratio of larger values, because the compressor will be given a larger internal
buffer over which there will be more match opportunities. Does not impact the
ability to read existing written files.

Also, reset the BAOS internal buffer on the way out of compress() so potential
large-ish buffers do not linger on the heap longer than necessary.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-06-28 12:49:25 -07:00
Duo Zhang d7f6861e8d
HBASE-27160 ClientZKSyncer.deleteDataForClientZkUntilSuccess should break from the loop when deletion is succeeded (#4579)
Signed-off-by: Bryan Beaudreault <bbeaudreault@apache.org>
2022-06-26 15:22:25 +08:00
Andrew Purtell 42853aae57 Revert "HBASE-26856 BufferedDataBlockEncoder.OnheapDecodedCell value can get corrupted"
This reverts commit f526609331.

See also HBASE-27151 TestMultiRespectsLimits.testBlockMultiLimits repeatable failure
2022-06-25 10:58:25 -07:00
huaxiangsun d447fa01ba
HBASE-27025 Change Hbase book's description for 74.7.3. Load Balancing META table load (#4530)
Signed-off-by: Bryan Beaudreault <bbeaudreault@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-06-24 08:01:24 -07:00
Bryan Beaudreault 25c56caec8
HBASE-27060 Allow sharing connections between AggregationClient instances (#4566)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-06-24 10:47:33 -04:00
Duo Zhang b1691a5318
HBASE-27146 Avoid CellUtil.cloneRow in MetaCellComparator (#4571)
Signed-off-by: Bryan Beaudreault <bbeaudreault@apache.org>
Reviewed-by: SiCheng-Zheng <643463623@qq.com>
2022-06-24 22:29:17 +08:00
Duo Zhang c0e7e98ec7
HBASE-26095 Modify our ref guide to mention the deprecation of HBTU and also how to make use of the new TestingHBaseCluster (#4542)
Signed-off-by: Bryan Beaudreault <bbeaudreault@apache.org>
2022-06-24 12:45:00 +08:00
Andrew Purtell 4f88a3c4bb
HBASE-27111 Make Netty channel bytebuf allocator configurable. (#4525)
Support site configuration of the bytebuf allocator that Netty will use for
NettyRpcServer channels. Property name is 'hbase.netty.rpcserver.allocator'.
Default is no value, which is equivalent to "pooled". Valid values are:
- "pooled": use PooledByteBufAllocator
- "unpooled": use UnpooledByteBufAllocator
- "heap": use HeapByteBufAllocator, which is a PooledByteBufAllocator that
   preferentially allocates buffers on heap wherever possible
- <class>: If the value is none of the recognized labels, treat it as a class
  name implementing org.apache.hbase.thirdparty.io.netty.buffer.ByteBufAllocator.
  This allows the user to add a custom implementation, perhaps for debugging.

Also updates ReflectionUtils with a new helper method.

Signed-off-by: Viraj Jasani <vjasani@apache.org>
2022-06-23 15:13:29 -07:00
Kerasone b8558d30d0
HBASE-27001 The deleted variable cannot be printed out (#4479)
* The deleted variable cannot be printed out, add it

Co-authored-by: selina.yan <selina.yan@huolala.cn>


Signed-off-by: Pankaj Kumar<pankajkumar@apache.org>
2022-06-23 22:41:32 +05:30
Bryan Beaudreault e84cd3dd6a
HBASE-26945 Quotas causes too much load on meta for large clusters (#4567)
Signed-off-by: Xiaolin Ha <haxiaolin@apache.org>
2022-06-23 10:34:29 -04:00
Bryan Beaudreault 59e5c610e3 HBASE-26790 Addendum ensure test is not flaky due to async caching 2022-06-23 10:22:55 -04:00
Bryan Beaudreault 50f11151fd
HBASE-26790 getAllRegionLocations can cache locations with null hostname (#4565)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-06-23 08:24:49 -04:00