Commit Graph

8818 Commits

Author SHA1 Message Date
BukrosSzabolcs 02118442fb HBASE-22749 Distributed MOB compactions (#4581)
* HBASE-22749 Distributed MOB compactions

- MOB compaction is now handled in-line with per-region compaction on region
  servers
- regions with mob data store per-hfile metadata about which mob hfiles are
  referenced
- admin requested major compaction will also rewrite MOB files; periodic RS
  initiated major compaction will not
- periodically a chore in the master will initiate a major compaction that
  will rewrite MOB values to ensure it happens. controlled by
  'hbase.mob.compaction.chore.period'. default is weekly
- control how many RS the chore requests major compaction on in parallel
  with 'hbase.mob.major.compaction.region.batch.size'. default is as
  parallel as possible.
- periodic chore in master will scan backing hfiles from regions to get the
  set of referenced mob hfiles and archive those that are no longer
  referenced. control period with 'hbase.master.mob.cleaner.period'
- Optionally, RS that are compacting mob files can limit write
  amplification by not rewriting values from mob hfiles over a certain size
  limit. opt-in by setting 'hbase.mob.compaction.type' to 'optimized'.
  control threshold by 'hbase.mob.compactions.max.file.size'.
  default is 1GiB
- Should smoothly integrate with existing MOB users via rolling upgrade.
  will delay old MOB file cleanup until per-region compaction has managed
  to compact each region at least once so that used mob hfile metadata can
  be gathered.

* HBASE-22749 Distributed MOB compactions

fix RestrictedApi

Co-authored-by: Vladimir Rodionov <vrodionov@apache.org>

Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
2022-07-13 09:01:47 -07:00
Duo Zhang 0a72d2215d HBASE-27193 TestZooKeeper is flaky (#4615)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
(cherry picked from commit 2662607b71)
2022-07-13 10:34:26 +08:00
Andrew Purtell fafc7ff478 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:21:01 -07:00
Andrew Purtell 65057abd2e 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>

Conflicts:
	hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/SimpleRpcServer.java
2022-07-12 11:10:53 -07:00
Bryan Beaudreault 3d816c0641 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:42:32 -04:00
Bryan Beaudreault 02bc62d73f HBASE-27188 Report maxStoreFileCount in jmx (#4609)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-07-11 22:19:58 -04:00
Bryan Beaudreault f5500dc495 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:09:30 -04:00
Duo Zhang c39025ff0e HBASE-27189 NettyServerRpcConnection is not properly closed when the netty channel is closed (#4611)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
(cherry picked from commit 5bc8670322)
2022-07-12 09:44:31 +08:00
chenglei 8d0776c7b8
HBASE-26950 Use AsyncConnection in ReplicationSink (#4607)
Signed-off-by: Bryan Beaudreault <bbeaudreault@hubspot.com>
2022-07-09 11:29:05 +08:00
Duo Zhang 3ca0f746fc HBASE-27148 Move minimum hadoop 3 support version to 3.2.3 (#4561) (#4599)
Signed-off-by: Xin Sun <ddupgs@gmail.com>
(cherry picked from commit 41972cb460)
2022-07-08 17:28:14 +08:00
Bryan Beaudreault 94fc45ef76 HBASE-27078 Allow configuring a separate timeout for meta scans (#4585)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-07-07 16:48:28 -04:00
Duo Zhang 3ca8484c56 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>
(cherry picked from commit 816e919e95)
2022-07-07 16:04:33 +08:00
Ujjawal 6870b9e168
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:34:52 -07:00
Bryan Beaudreault 7a2a66c9b0 HBASE-27048 Addendum spotless fix 2022-07-06 13:52:14 -04:00
Bryan Beaudreault efe0e14744 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 13:47:15 -04:00
tianhang 10d8609d17 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>
(cherry picked from commit 6031a3a8d4)
2022-07-06 12:39:29 +08:00
Duo Zhang baddedf783 HBASE-23330: Fix delegation token fetch with MasterRegistry (#1084) (#4598)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
(cherry picked from commit d8b3f55518)

Co-authored-by: Bharath Vissapragada <bharathv@apache.org>
2022-07-06 11:54:00 +08:00
Bryan Beaudreault e3963458b1 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:48:07 -04:00
Duo Zhang fec317560f HBASE-27169 TestSeparateClientZKCluster is flaky (#4587)
Signed-off-by: Xin Sun <ddupgs@gmail.com>
(cherry picked from commit 03c23beb57)
2022-07-01 22:13:33 +08:00
Ishika a9e346fba7 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>
(cherry picked from commit acfbc3ff7d)
2022-06-30 23:28:37 +08:00
Andrew Purtell cdc4e892ee 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:53:38 -07:00
Duo Zhang 9537f07ee5 HBASE-27160 ClientZKSyncer.deleteDataForClientZkUntilSuccess should break from the loop when deletion is succeeded (#4579)
Signed-off-by: Bryan Beaudreault <bbeaudreault@apache.org>
(cherry picked from commit d7f6861e8d)
2022-06-26 15:29:42 +08:00
Bryan Beaudreault 2b36963d46 HBASE-26790 getAllRegionLocations can cache locations with null hostname (#4575)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-06-24 07:41:55 -04:00
Andrew Purtell b2a68291f3 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>

Conflicts:
	hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/NettyRpcServer.java
	hbase-server/src/test/java/org/apache/hadoop/hbase/ipc/TestNettyRpcServer.java
2022-06-23 15:18:43 -07:00
Bryan Beaudreault b379d8e2cf HBASE-26945 Quotas causes too much load on meta for large clusters (#4576)
Signed-off-by: Xiaolin Ha <haxiaolin@apache.org>
2022-06-23 16:48:07 -04:00
Kerasone 2b7347f23c 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>
(cherry picked from commit b8558d30d0)
2022-06-23 22:44:27 +05:30
Pankaj 31acc8510f HBASE-27105 HBaseInterClusterReplicationEndpoint should honor replication adaptive timeout (#4569)
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
(cherry picked from commit c74bf8b6e2)
2022-06-23 22:24:53 +05:30
litao 8828d07c87
HBASE-27098 Fix link for field comments (#4499)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2022-06-21 18:31:35 -07:00
LiangJun He 53b57d686b HBASE-27028 Add a shell command for flushing master local region (#4539)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
(cherry picked from commit 666aa064e7)
2022-06-21 13:35:38 +08:00
xiaozhang0319 b9d6d370f2 HBASE-27099 The log printing fspread/fsread cost time unit should be milliseconds (#4500)
Co-authored-by: xiaozhang <issac.zhang@huolala.cn>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
(cherry picked from commit b498efdbc1)
2022-06-21 00:14:36 +08:00
SiCheng-Zheng 5833756e5e
HBASE-27128 when open archiveRetries totalLogSize calculation mistake (#4546)
Co-authored-by: zhengsicheng <zhengsicheng@jd.com>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-06-20 23:45:35 +08:00
Xiaolin Ha a7083d93cb HBASE-27125 The batch size of cleaning expired mob files should have an upper bound (#4541)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-06-18 02:08:37 +08:00
litao fa1b3eed99
HBASE-27117 Update the method comments for RegionServerAccounting (#4532) 2022-06-16 17:20:02 -07:00
Nick Dimiduk ac7622c398
HBASE-26366 Provide meaningful parent spans to ZK interactions
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-06-13 10:33:49 +02:00
Viraj Jasani 9741f1a5c1 Revert "HBASE-25709 Close region may stuck when region is compacting and skipped most cells read (#3117)" (#4524)
This reverts commit f3a48d1910.

Signed-off-by: Andrew Purtell <apurtell@apache.org>

Conflicts:
	hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
2022-06-12 10:25:23 -07:00
Nick Dimiduk cc2af766d6
HBASE-27095 HbckChore should produce a report
In #4470 for HBASE-26192, it was noted that the HbckChore is kind of a pain to use and test
because it maintains a bunch of local state. By contract, the CatalogJanitorChore makes a nice
self-contained report. Let's update HbckChore to do the same.

Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-06-10 15:47:08 +02:00
Nick Dimiduk 7ead4b1617 HBASE-27066 The Region Visualizer display failed
Reviewed-by: litao <tomleescut@gmail.com>
2022-06-09 13:09:38 +02:00
Nick Dimiduk d24f4ce2f0 Revert "HBASE-27066 The Region Visualizer display failed (#4472)"
This reverts commit 8b9df125a3.
2022-06-09 13:09:38 +02:00
liuzhuang2017 19f67d22d4 HBASE-27080 Optimize debug output log of ConstantSizeRegionSplitPolicy class. (#4481)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
(cherry picked from commit 12a9e6e5ec)
2022-06-06 13:42:08 +08:00
BukrosSzabolcs 8139cf6477 HBASE-27017: MOB snapshot is broken when FileBased SFT is used (#4466)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
2022-06-06 00:29:27 +01:00
huaxiangsun 5a13ad8137
HBASE-26649 Support meta replica LoadBalance mode for RegionLocator#getAllRegionLocations() (#4442) (#4484)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-06-03 15:27:00 -07:00
skysiders 0c5d6601da
HBASE-26985 check permission for SecureBulkLoadManager (#4379)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2022-06-02 15:30:12 -07:00
Duo Zhang 2625c67e73 HBASE-27046 The filenum in AbstractFSWAL should be monotone increasing (#4449)
Signed-off-by: Xin Sun <ddupgs@gmail.com>
Signed-off-by: GeorryHuang <huangzhuoyue@apache.org>
(cherry picked from commit 313a37f7ac)
2022-06-03 00:11:10 +08:00
Xiaolin Ha 8bf5256c24 HBASE-26680 Close and do not write trailer for the broken WAL writer(addendum) (#4405)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
(cherry picked from commit 80f410ec3f)
2022-06-03 00:08:45 +08:00
LiangJun He a93b7cd654 HBASE-27039 Some methods of MasterRegion should be annotated for testing only (#4433)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
(cherry picked from commit 15002fccb4)
2022-06-02 21:39:13 +08:00
Andrew Purtell b7158a87ea Preparing development version 2.5.1-SNAPSHOT
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-05-31 20:06:32 -07:00
Andrew Purtell 2da2dd917f Preparing hbase release 2.5.0RC0; tagging and updates to CHANGES.md and RELEASENOTES.md
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-05-31 20:06:29 -07:00
Andrew Purtell 2f63d99c48 HBASE-27079 Lower some DEBUG level logs in ReplicationSourceWALReader to TRACE (#4476)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2022-05-31 12:43:45 -07:00
litao f0dcbe78a7 HBASE-27068 NPE occurs when the active master has not yet been elected (#4474)
Signed-off-by: Pankaj Kumar <pankajkumar@apache.org>
Signed-off-by: Viraj Jasani<virajjasani@apache.org
2022-05-31 11:50:36 -07:00
Andrew Purtell 2a59ebffaa HBASE-27064 CME in TestRegionNormalizerWorkQueue (#4468)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2022-05-31 11:33:43 -07:00