[hbase] branch branch-2 updated: HBASE-27264 Add options to consider compressed size when delimiting blocks during hfile writes (#4675)

2022-08-15 Thread wchevreuil
This is an automated email from the ASF dual-hosted git repository.

wchevreuil pushed a commit to branch branch-2
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/branch-2 by this push:
 new 3acf920e1f6 HBASE-27264 Add options to consider compressed size when 
delimiting blocks during hfile writes (#4675)
3acf920e1f6 is described below

commit 3acf920e1f6e3a53d8f08f0e36a0fd0c8fef0cfd
Author: Wellington Ramos Chevreuil 
AuthorDate: Mon Aug 15 22:35:35 2022 +0100

HBASE-27264 Add options to consider compressed size when delimiting blocks 
during hfile writes (#4675)

Signed-off-by: Tak Lon (Stephen) Wu 
Signed-off-by: Ankit Singhal 
---
 .../io/hfile/BlockCompressedSizePredicator.java| 59 +
 .../apache/hadoop/hbase/io/hfile/HFileBlock.java   | 39 ++--
 .../hadoop/hbase/io/hfile/HFileWriterImpl.java |  6 +-
 .../PreviousBlockCompressionRatePredicator.java| 62 ++
 .../io/hfile/UncompressedBlockSizePredicator.java  | 49 ++
 .../hadoop/hbase/regionserver/TestHStoreFile.java  | 74 ++
 6 files changed, 283 insertions(+), 6 deletions(-)

diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/BlockCompressedSizePredicator.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/BlockCompressedSizePredicator.java
new file mode 100644
index 000..a90e04fe5ad
--- /dev/null
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/BlockCompressedSizePredicator.java
@@ -0,0 +1,59 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.hadoop.hbase.io.hfile;
+
+import org.apache.yetus.audience.InterfaceAudience;
+
+/**
+ * Allows for defining different compression rate predicates on its 
implementing classes. Useful
+ * when compression is in place, and we want to define block size based on the 
compressed size,
+ * rather than the default behaviour that considers the uncompressed size 
only. Since we don't
+ * actually know the compressed size until we actual apply compression in the 
block byte buffer, we
+ * need to "predicate" this compression rate and minimize compression 
execution to avoid excessive
+ * resources usage. Different approaches for predicating the compressed block 
size can be defined by
+ * implementing classes. The updateLatestBlockSizes allows for 
updating uncompressed
+ * and compressed size values, and is called during block finishing (when we 
finally apply
+ * compression on the block data). Final block size predicate logic is 
implemented in
+ * shouldFinishBlock, which is called by the block writer once 
uncompressed size has
+ * reached the configured BLOCK size, and additional checks should be applied 
to decide if the block
+ * can be finished.
+ */
+@InterfaceAudience.Private
+public interface BlockCompressedSizePredicator {
+
+  String BLOCK_COMPRESSED_SIZE_PREDICATOR = 
"hbase.block.compressed.size.predicator";
+
+  String MAX_BLOCK_SIZE_UNCOMPRESSED = "hbase.block.max.size.uncompressed";
+
+  /**
+   * Updates the predicator with both compressed and uncompressed sizes of 
latest block written. To
+   * be called once the block is finshed and flushed to disk after compression.
+   * @param context  the HFileContext containg the configured max block 
size.
+   * @param uncompressed the uncompressed size of last block written.
+   * @param compressed   the compressed size of last block written.
+   */
+  void updateLatestBlockSizes(HFileContext context, int uncompressed, int 
compressed);
+
+  /**
+   * Decides if the block should be finished based on the comparison of its 
uncompressed size
+   * against an adjusted size based on a predicated compression factor.
+   * @param uncompressed true if the block should be finished. n
+   */
+  boolean shouldFinishBlock(int uncompressed);
+
+}
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileBlock.java 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileBlock.java
index b44a10cbfbb..2c16ca9d905 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileBlock.java
+++ 
b/hbase-server/src/main/

[hbase] branch master updated: HBASE-27264 Add options to consider compressed size when delimiting blocks during hfile writes (#4675)

2022-08-15 Thread wchevreuil
This is an automated email from the ASF dual-hosted git repository.

wchevreuil pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/master by this push:
 new eaa47c5cd4a HBASE-27264 Add options to consider compressed size when 
delimiting blocks during hfile writes (#4675)
eaa47c5cd4a is described below

commit eaa47c5cd4a71c4a3f5b0e8a1c7fc7bd1acd75bf
Author: Wellington Ramos Chevreuil 
AuthorDate: Mon Aug 15 22:35:35 2022 +0100

HBASE-27264 Add options to consider compressed size when delimiting blocks 
during hfile writes (#4675)

Signed-off-by: Tak Lon (Stephen) Wu 
Signed-off-by: Ankit Singhal 
---
 .../io/hfile/BlockCompressedSizePredicator.java| 59 +
 .../apache/hadoop/hbase/io/hfile/HFileBlock.java   | 39 ++--
 .../hadoop/hbase/io/hfile/HFileWriterImpl.java |  6 +-
 .../PreviousBlockCompressionRatePredicator.java| 62 ++
 .../io/hfile/UncompressedBlockSizePredicator.java  | 49 ++
 .../hadoop/hbase/regionserver/TestHStoreFile.java  | 74 ++
 6 files changed, 283 insertions(+), 6 deletions(-)

diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/BlockCompressedSizePredicator.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/BlockCompressedSizePredicator.java
new file mode 100644
index 000..a90e04fe5ad
--- /dev/null
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/BlockCompressedSizePredicator.java
@@ -0,0 +1,59 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.hadoop.hbase.io.hfile;
+
+import org.apache.yetus.audience.InterfaceAudience;
+
+/**
+ * Allows for defining different compression rate predicates on its 
implementing classes. Useful
+ * when compression is in place, and we want to define block size based on the 
compressed size,
+ * rather than the default behaviour that considers the uncompressed size 
only. Since we don't
+ * actually know the compressed size until we actual apply compression in the 
block byte buffer, we
+ * need to "predicate" this compression rate and minimize compression 
execution to avoid excessive
+ * resources usage. Different approaches for predicating the compressed block 
size can be defined by
+ * implementing classes. The updateLatestBlockSizes allows for 
updating uncompressed
+ * and compressed size values, and is called during block finishing (when we 
finally apply
+ * compression on the block data). Final block size predicate logic is 
implemented in
+ * shouldFinishBlock, which is called by the block writer once 
uncompressed size has
+ * reached the configured BLOCK size, and additional checks should be applied 
to decide if the block
+ * can be finished.
+ */
+@InterfaceAudience.Private
+public interface BlockCompressedSizePredicator {
+
+  String BLOCK_COMPRESSED_SIZE_PREDICATOR = 
"hbase.block.compressed.size.predicator";
+
+  String MAX_BLOCK_SIZE_UNCOMPRESSED = "hbase.block.max.size.uncompressed";
+
+  /**
+   * Updates the predicator with both compressed and uncompressed sizes of 
latest block written. To
+   * be called once the block is finshed and flushed to disk after compression.
+   * @param context  the HFileContext containg the configured max block 
size.
+   * @param uncompressed the uncompressed size of last block written.
+   * @param compressed   the compressed size of last block written.
+   */
+  void updateLatestBlockSizes(HFileContext context, int uncompressed, int 
compressed);
+
+  /**
+   * Decides if the block should be finished based on the comparison of its 
uncompressed size
+   * against an adjusted size based on a predicated compression factor.
+   * @param uncompressed true if the block should be finished. n
+   */
+  boolean shouldFinishBlock(int uncompressed);
+
+}
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileBlock.java 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileBlock.java
index f68a94a..8e04580874f 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileBlock.java
+++ 
b/hbase-server/src/main/java

[hbase] branch branch-2.5 updated: HBASE-23723 Ensure MOB compaction works in optimized mode after snapshot clone (#4617) (#4704)

2022-08-15 Thread huaxiangsun
This is an automated email from the ASF dual-hosted git repository.

huaxiangsun pushed a commit to branch branch-2.5
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/branch-2.5 by this push:
 new e595f154d10 HBASE-23723 Ensure MOB compaction works in optimized mode 
after snapshot clone (#4617) (#4704)
e595f154d10 is described below

commit e595f154d108f335c3025dee8ef85b8da586b0f2
Author: huaxiangsun 
AuthorDate: Mon Aug 15 13:16:00 2022 -0700

HBASE-23723 Ensure MOB compaction works in optimized mode after snapshot 
clone (#4617) (#4704)

* HBASE-23723 Ensure MOB compaction works in optimized mode after snapshot 
clone (#1446)

* Reorganize MOB compaction tests for more reuse.
* Add tests for mob compaction after snapshot clone operations
* note the original table used to write a given mob hfile and use that to 
find it later.

Signed-off-by: Esteban Gutierrez 

* spotless:apply to fix HBaseTestingUtility

* Fix error-prone errors

Signed-off-by: Esteban Gutierrez 
Co-authored-by: Sean Busbey 

Signed-off-by: Esteban Gutierrez 
Co-authored-by: Andrew Purtell 
Co-authored-by: Sean Busbey 
---
 .../org/apache/hadoop/hbase/PrivateCellUtil.java   |   2 +-
 .../java/org/apache/hadoop/hbase/TableName.java|  60 +++-
 .../hadoop/hbase/io/hfile/HFilePrettyPrinter.java  |   8 +-
 .../hadoop/hbase/mob/DefaultMobStoreCompactor.java | 127 +---
 .../hadoop/hbase/mob/DefaultMobStoreFlusher.java   |   6 +-
 .../hadoop/hbase/mob/MobFileCleanerChore.java  |  41 +--
 .../java/org/apache/hadoop/hbase/mob/MobUtils.java | 150 --
 .../hadoop/hbase/regionserver/HMobStore.java   |  55 ++--
 .../hadoop/hbase/regionserver/HStoreFile.java  |   3 +-
 .../hadoop/hbase/regionserver/StoreFileWriter.java |  17 +-
 .../apache/hadoop/hbase/HBaseTestingUtility.java   |  23 ++
 .../hadoop/hbase/mob/FaultyMobStoreCompactor.java  |  33 ++-
 .../hadoop/hbase/mob/TestMobCompactionOptMode.java |  35 +--
 .../mob/TestMobCompactionOptRegionBatchMode.java   |  39 ++-
 .../TestMobCompactionRegularRegionBatchMode.java   |  38 +--
 .../hbase/mob/TestMobCompactionWithDefaults.java   | 322 +
 16 files changed, 739 insertions(+), 220 deletions(-)

diff --git 
a/hbase-common/src/main/java/org/apache/hadoop/hbase/PrivateCellUtil.java 
b/hbase-common/src/main/java/org/apache/hadoop/hbase/PrivateCellUtil.java
index b3e70132dfc..001dfaae6d5 100644
--- a/hbase-common/src/main/java/org/apache/hadoop/hbase/PrivateCellUtil.java
+++ b/hbase-common/src/main/java/org/apache/hadoop/hbase/PrivateCellUtil.java
@@ -916,7 +916,7 @@ public final class PrivateCellUtil {
* Retrieve Cell's first tag, matching the passed in type
* @param cell The Cell
* @param type Type of the Tag to retrieve
-   * @return null if there is no tag of the passed in tag type
+   * @return Optional, empty if there is no tag of the passed in tag type
*/
   public static Optional getTag(Cell cell, byte type) {
 boolean bufferBacked = cell instanceof ByteBufferExtendedCell;
diff --git a/hbase-common/src/main/java/org/apache/hadoop/hbase/TableName.java 
b/hbase-common/src/main/java/org/apache/hadoop/hbase/TableName.java
index 18eba1ebb53..174a4169c0d 100644
--- a/hbase-common/src/main/java/org/apache/hadoop/hbase/TableName.java
+++ b/hbase-common/src/main/java/org/apache/hadoop/hbase/TableName.java
@@ -22,9 +22,12 @@ import java.nio.charset.StandardCharsets;
 import java.util.Arrays;
 import java.util.Set;
 import java.util.concurrent.CopyOnWriteArraySet;
+import org.apache.commons.lang3.ArrayUtils;
 import org.apache.hadoop.hbase.util.Bytes;
 import org.apache.yetus.audience.InterfaceAudience;
 
+import org.apache.hbase.thirdparty.com.google.common.base.Preconditions;
+
 /**
  * Immutable POJO class for representing a table name. Which is of the form: 
:
Two special namespaces: 1. hbase - system namespace, used @@ -386,28 +389,69 @@ public final class TableName implements Comparable { } /** + * @param fullName will use the entire byte array * @throws IllegalArgumentException if fullName equals old root or old meta. Some code depends on * this. The test is buried in the table creation to save on * array comparison when we're creating a standard table object * that will be in the cache. */ public static TableName valueOf(byte[] fullName) throws IllegalArgumentException { +return valueOf(fullName, 0, fullName.length); + } + + /** + * @param fullName byte array to look into + * @param offset within said array + * @param length within said array + * @throws IllegalArgumentException if fullName equals old root or old meta. + */ + public static TableName valueOf(byte[] fullName, int offset, int length)

[hbase] branch branch-2.5 updated: HBASE-26982 Add index and bloom filter statistics of LruBlockCache on… (#4376)

This is an automated email from the ASF dual-hosted git repository.

stack pushed a commit to branch branch-2.5
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/branch-2.5 by this push:
 new 3980e6d087e HBASE-26982 Add index and bloom filter statistics of 
LruBlockCache on… (#4376)
3980e6d087e is described below

commit 3980e6d087ed4d1225993b54ab856c28bd9db5e4
Author: liangxs 
AuthorDate: Tue Aug 16 02:09:36 2022 +0800

HBASE-26982 Add index and bloom filter statistics of LruBlockCache on… 
(#4376)

Signed-off-by: Andrew Purtell 
Signed-off-by: stack 
---
 .../apache/hadoop/hbase/io/hfile/BlockType.java|  9 
 .../hbase/tmpl/regionserver/BlockCacheTmpl.jamon   | 29 ++-
 .../hadoop/hbase/io/hfile/LruBlockCache.java   | 57 +++---
 3 files changed, 86 insertions(+), 9 deletions(-)

diff --git 
a/hbase-common/src/main/java/org/apache/hadoop/hbase/io/hfile/BlockType.java 
b/hbase-common/src/main/java/org/apache/hadoop/hbase/io/hfile/BlockType.java
index 3bd98e6388c..9b8a6bbfe2c 100644
--- a/hbase-common/src/main/java/org/apache/hadoop/hbase/io/hfile/BlockType.java
+++ b/hbase-common/src/main/java/org/apache/hadoop/hbase/io/hfile/BlockType.java
@@ -215,4 +215,13 @@ public enum BlockType {
 return this == DATA || this == ENCODED_DATA;
   }
 
+  /** Returns whether this block category is index */
+  public final boolean isIndex() {
+return this.getCategory() == BlockCategory.INDEX;
+  }
+
+  /** Returns whether this block category is bloom filter */
+  public final boolean isBloom() {
+return this.getCategory() == BlockCategory.BLOOM;
+  }
 }
diff --git 
a/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/regionserver/BlockCacheTmpl.jamon
 
b/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/regionserver/BlockCacheTmpl.jamon
index f7abdc80dd3..7f4d0063dc1 100644
--- 
a/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/regionserver/BlockCacheTmpl.jamon
+++ 
b/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/regionserver/BlockCacheTmpl.jamon
@@ -37,6 +37,7 @@ org.apache.hadoop.hbase.io.hfile.CachedBlock;
 org.apache.hadoop.conf.Configuration;
 org.apache.hadoop.hbase.io.hfile.CacheConfig;
 org.apache.hadoop.hbase.io.hfile.BlockCache;
+org.apache.hadoop.hbase.io.hfile.LruBlockCache;
 org.apache.hadoop.hbase.io.hfile.bucket.BucketCacheStats;
 org.apache.hadoop.hbase.io.hfile.bucket.BucketCache;
 org.apache.hadoop.hbase.io.hfile.bucket.BucketAllocator;
@@ -284,6 +285,8 @@ are combined counts. Request count is sum of hits and 
misses.
   String bcName = bc.getClass().getSimpleName();
   int maxCachedBlocksByFile = BlockCacheUtil.getMaxCachedBlocksByFile(config);
 
+  boolean lru = bc instanceof LruBlockCache;
+
   boolean bucketCache = bc.getClass().getSimpleName().equals("BucketCache");
   BucketCacheStats bucketCacheStats = null;
   BucketAllocator bucketAllocator = null;
@@ -328,7 +331,19 @@ are combined counts. Request count is sum of hits and 
misses.
 Count of DATA Blocks
 
 
+<%if lru %>
+
+Index Block Count
+<% String.format("%,d", ((LruBlockCache)bc).getIndexBlockCount()) 
%>
+Count of INDEX Blocks
+
 
+Bloom Block Count
+<% String.format("%,d", ((LruBlockCache)bc).getBloomBlockCount()) 
%>
+Count of BLOOM Blocks
+
+
+  
 Size of Blocks
 <% TraditionalBinaryPrefix.long2String(bc.getCurrentSize(), "B", 
1) %>
 Size of Blocks
@@ -340,7 +355,19 @@ are combined counts. Request count is sum of hits and 
misses.
 Size of DATA Blocks
 
  
-<& evictions_tmpl; bc = bc; &>
+<%if lru %>
+
+Size of Index Blocks
+<% 
TraditionalBinaryPrefix.long2String(((LruBlockCache)bc).getCurrentIndexSize(), 
"B", 1) %>
+Size of INDEX Blocks
+
+
+Size of Bloom Blocks
+<% 
TraditionalBinaryPrefix.long2String(((LruBlockCache)bc).getCurrentBloomSize(), 
"B", 1) %>
+Size of BLOOM Blocks
+
+
+ <& evictions_tmpl; bc = bc; &>
 <& hits_tmpl; bc = bc; &>
 
 <%if bucketCache %>
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/LruBlockCache.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/LruBlockCache.java
index 74514aa4a55..a689605a584 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/LruBlockCache.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/LruBlockCache.java
@@ -174,13 +174,25 @@ public class LruBlockCache implements 
FirstLevelBlockCache {
   private final AtomicLong size;
 
   /** Current size of data blocks */
-  private final LongAdder dataBlockSize;
+  private final LongAdder dataBlockSize = new LongAdder();
+
+  /** Current size of index blocks */
+  private final LongAdder indexBlockSize = new LongAdder();
+
+  /** Current size of bloom blocks */
+  private final LongAdder bloomBlockSize = new LongAdder();
 
  

[hbase] branch branch-2 updated: HBASE-26982 Add index and bloom filter statistics of LruBlockCache on… (#4376)

This is an automated email from the ASF dual-hosted git repository.

stack pushed a commit to branch branch-2
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/branch-2 by this push:
 new aaad3a70774 HBASE-26982 Add index and bloom filter statistics of 
LruBlockCache on… (#4376)
aaad3a70774 is described below

commit aaad3a70774ce6546489d0579047b27eee620848
Author: liangxs 
AuthorDate: Tue Aug 16 02:09:36 2022 +0800

HBASE-26982 Add index and bloom filter statistics of LruBlockCache on… 
(#4376)

Signed-off-by: Andrew Purtell 
Signed-off-by: stack 
---
 .../apache/hadoop/hbase/io/hfile/BlockType.java|  9 
 .../hbase/tmpl/regionserver/BlockCacheTmpl.jamon   | 29 ++-
 .../hadoop/hbase/io/hfile/LruBlockCache.java   | 57 +++---
 3 files changed, 86 insertions(+), 9 deletions(-)

diff --git 
a/hbase-common/src/main/java/org/apache/hadoop/hbase/io/hfile/BlockType.java 
b/hbase-common/src/main/java/org/apache/hadoop/hbase/io/hfile/BlockType.java
index 3bd98e6388c..9b8a6bbfe2c 100644
--- a/hbase-common/src/main/java/org/apache/hadoop/hbase/io/hfile/BlockType.java
+++ b/hbase-common/src/main/java/org/apache/hadoop/hbase/io/hfile/BlockType.java
@@ -215,4 +215,13 @@ public enum BlockType {
 return this == DATA || this == ENCODED_DATA;
   }
 
+  /** Returns whether this block category is index */
+  public final boolean isIndex() {
+return this.getCategory() == BlockCategory.INDEX;
+  }
+
+  /** Returns whether this block category is bloom filter */
+  public final boolean isBloom() {
+return this.getCategory() == BlockCategory.BLOOM;
+  }
 }
diff --git 
a/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/regionserver/BlockCacheTmpl.jamon
 
b/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/regionserver/BlockCacheTmpl.jamon
index f7abdc80dd3..7f4d0063dc1 100644
--- 
a/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/regionserver/BlockCacheTmpl.jamon
+++ 
b/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/regionserver/BlockCacheTmpl.jamon
@@ -37,6 +37,7 @@ org.apache.hadoop.hbase.io.hfile.CachedBlock;
 org.apache.hadoop.conf.Configuration;
 org.apache.hadoop.hbase.io.hfile.CacheConfig;
 org.apache.hadoop.hbase.io.hfile.BlockCache;
+org.apache.hadoop.hbase.io.hfile.LruBlockCache;
 org.apache.hadoop.hbase.io.hfile.bucket.BucketCacheStats;
 org.apache.hadoop.hbase.io.hfile.bucket.BucketCache;
 org.apache.hadoop.hbase.io.hfile.bucket.BucketAllocator;
@@ -284,6 +285,8 @@ are combined counts. Request count is sum of hits and 
misses.
   String bcName = bc.getClass().getSimpleName();
   int maxCachedBlocksByFile = BlockCacheUtil.getMaxCachedBlocksByFile(config);
 
+  boolean lru = bc instanceof LruBlockCache;
+
   boolean bucketCache = bc.getClass().getSimpleName().equals("BucketCache");
   BucketCacheStats bucketCacheStats = null;
   BucketAllocator bucketAllocator = null;
@@ -328,7 +331,19 @@ are combined counts. Request count is sum of hits and 
misses.
 Count of DATA Blocks
 
 
+<%if lru %>
+
+Index Block Count
+<% String.format("%,d", ((LruBlockCache)bc).getIndexBlockCount()) 
%>
+Count of INDEX Blocks
+
 
+Bloom Block Count
+<% String.format("%,d", ((LruBlockCache)bc).getBloomBlockCount()) 
%>
+Count of BLOOM Blocks
+
+
+  
 Size of Blocks
 <% TraditionalBinaryPrefix.long2String(bc.getCurrentSize(), "B", 
1) %>
 Size of Blocks
@@ -340,7 +355,19 @@ are combined counts. Request count is sum of hits and 
misses.
 Size of DATA Blocks
 
  
-<& evictions_tmpl; bc = bc; &>
+<%if lru %>
+
+Size of Index Blocks
+<% 
TraditionalBinaryPrefix.long2String(((LruBlockCache)bc).getCurrentIndexSize(), 
"B", 1) %>
+Size of INDEX Blocks
+
+
+Size of Bloom Blocks
+<% 
TraditionalBinaryPrefix.long2String(((LruBlockCache)bc).getCurrentBloomSize(), 
"B", 1) %>
+Size of BLOOM Blocks
+
+
+ <& evictions_tmpl; bc = bc; &>
 <& hits_tmpl; bc = bc; &>
 
 <%if bucketCache %>
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/LruBlockCache.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/LruBlockCache.java
index 74514aa4a55..a689605a584 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/LruBlockCache.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/LruBlockCache.java
@@ -174,13 +174,25 @@ public class LruBlockCache implements 
FirstLevelBlockCache {
   private final AtomicLong size;
 
   /** Current size of data blocks */
-  private final LongAdder dataBlockSize;
+  private final LongAdder dataBlockSize = new LongAdder();
+
+  /** Current size of index blocks */
+  private final LongAdder indexBlockSize = new LongAdder();
+
+  /** Current size of bloom blocks */
+  private final LongAdder bloomBlockSize = new LongAdder();
 
   /**

[hbase] branch master updated (9215066e2b8 -> 8ec02c025ee)

This is an automated email from the ASF dual-hosted git repository.

stack pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/hbase.git


from 9215066e2b8 HBASE-27221 Bump spotless version to 2.24.1 (#4693)
 add 8ec02c025ee HBASE-26982 Add index and bloom filter statistics of 
LruBlockCache on… (#4376)

No new revisions were added by this update.

Summary of changes:
 .../apache/hadoop/hbase/io/hfile/BlockType.java|  9 
 .../hbase/tmpl/regionserver/BlockCacheTmpl.jamon   | 29 ++-
 .../hadoop/hbase/io/hfile/LruBlockCache.java   | 57 +++---
 3 files changed, 86 insertions(+), 9 deletions(-)



[hbase] branch branch-2.4 updated: HBASE-27296 Some Cell's implementation of toString() such as IndividualBytesFieldCell prints out value and tags which is too verbose (#4695) (#4703)

This is an automated email from the ASF dual-hosted git repository.

huaxiangsun pushed a commit to branch branch-2.4
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/branch-2.4 by this push:
 new a925b333c25 HBASE-27296 Some Cell's implementation of toString() such 
as IndividualBytesFieldCell prints out value and tags which is too verbose 
(#4695) (#4703)
a925b333c25 is described below

commit a925b333c25a8e9ad9abdfd6f48aa99586b14852
Author: huaxiangsun 
AuthorDate: Mon Aug 15 09:17:10 2022 -0700

HBASE-27296 Some Cell's implementation of toString() such as 
IndividualBytesFieldCell prints out value and tags which is too verbose (#4695) 
(#4703)

Signed-off-by: Nick Dimiduk 
---
 .../src/main/java/org/apache/hadoop/hbase/ByteBufferKeyValue.java   | 2 +-
 .../src/main/java/org/apache/hadoop/hbase/IndividualBytesFieldCell.java | 2 +-
 .../src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git 
a/hbase-common/src/main/java/org/apache/hadoop/hbase/ByteBufferKeyValue.java 
b/hbase-common/src/main/java/org/apache/hadoop/hbase/ByteBufferKeyValue.java
index 6c1c510ccb8..9c668c1cc3f 100644
--- a/hbase-common/src/main/java/org/apache/hadoop/hbase/ByteBufferKeyValue.java
+++ b/hbase-common/src/main/java/org/apache/hadoop/hbase/ByteBufferKeyValue.java
@@ -294,7 +294,7 @@ public class ByteBufferKeyValue extends 
ByteBufferExtendedCell {
 
   @Override
   public String toString() {
-return CellUtil.toString(this, true);
+return CellUtil.toString(this, false);
   }
 
   @Override
diff --git 
a/hbase-common/src/main/java/org/apache/hadoop/hbase/IndividualBytesFieldCell.java
 
b/hbase-common/src/main/java/org/apache/hadoop/hbase/IndividualBytesFieldCell.java
index 77d35db3ffb..8601232b09d 100644
--- 
a/hbase-common/src/main/java/org/apache/hadoop/hbase/IndividualBytesFieldCell.java
+++ 
b/hbase-common/src/main/java/org/apache/hadoop/hbase/IndividualBytesFieldCell.java
@@ -293,6 +293,6 @@ public class IndividualBytesFieldCell implements 
ExtendedCell, Cloneable {
 
   @Override
   public String toString() {
-return CellUtil.toString(this, true);
+return CellUtil.toString(this, false);
   }
 }
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
index b8a201d666d..4deee6e029d 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
@@ -1506,7 +1506,7 @@ public abstract class HFileReaderImpl implements 
HFile.Reader, Configurable {
 
 @Override
 public String getKeyString() {
-  return CellUtil.toString(getKey(), true);
+  return CellUtil.toString(getKey(), false);
 }
 
 @Override



[hbase] branch branch-2.5 updated: HBASE-27296 Some Cell's implementation of toString() such as IndividualBytesFieldCell prints out value and tags which is too verbose (#4695) (#4702)

This is an automated email from the ASF dual-hosted git repository.

huaxiangsun pushed a commit to branch branch-2.5
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/branch-2.5 by this push:
 new 7f6f184f067 HBASE-27296 Some Cell's implementation of toString() such 
as IndividualBytesFieldCell prints out value and tags which is too verbose 
(#4695) (#4702)
7f6f184f067 is described below

commit 7f6f184f067f10c4b896d9e45311eee60f28833b
Author: huaxiangsun 
AuthorDate: Mon Aug 15 09:16:51 2022 -0700

HBASE-27296 Some Cell's implementation of toString() such as 
IndividualBytesFieldCell prints out value and tags which is too verbose (#4695) 
(#4702)

Signed-off-by: Nick Dimiduk 
---
 .../src/main/java/org/apache/hadoop/hbase/ByteBufferKeyValue.java   | 2 +-
 .../src/main/java/org/apache/hadoop/hbase/IndividualBytesFieldCell.java | 2 +-
 .../src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git 
a/hbase-common/src/main/java/org/apache/hadoop/hbase/ByteBufferKeyValue.java 
b/hbase-common/src/main/java/org/apache/hadoop/hbase/ByteBufferKeyValue.java
index 6c1c510ccb8..9c668c1cc3f 100644
--- a/hbase-common/src/main/java/org/apache/hadoop/hbase/ByteBufferKeyValue.java
+++ b/hbase-common/src/main/java/org/apache/hadoop/hbase/ByteBufferKeyValue.java
@@ -294,7 +294,7 @@ public class ByteBufferKeyValue extends 
ByteBufferExtendedCell {
 
   @Override
   public String toString() {
-return CellUtil.toString(this, true);
+return CellUtil.toString(this, false);
   }
 
   @Override
diff --git 
a/hbase-common/src/main/java/org/apache/hadoop/hbase/IndividualBytesFieldCell.java
 
b/hbase-common/src/main/java/org/apache/hadoop/hbase/IndividualBytesFieldCell.java
index 77d35db3ffb..8601232b09d 100644
--- 
a/hbase-common/src/main/java/org/apache/hadoop/hbase/IndividualBytesFieldCell.java
+++ 
b/hbase-common/src/main/java/org/apache/hadoop/hbase/IndividualBytesFieldCell.java
@@ -293,6 +293,6 @@ public class IndividualBytesFieldCell implements 
ExtendedCell, Cloneable {
 
   @Override
   public String toString() {
-return CellUtil.toString(this, true);
+return CellUtil.toString(this, false);
   }
 }
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
index 852306bd251..63d1cee2b13 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
@@ -1510,7 +1510,7 @@ public abstract class HFileReaderImpl implements 
HFile.Reader, Configurable {
 
 @Override
 public String getKeyString() {
-  return CellUtil.toString(getKey(), true);
+  return CellUtil.toString(getKey(), false);
 }
 
 @Override



[hbase] branch branch-2 updated: HBASE-27296 Some Cell's implementation of toString() such as IndividualBytesFieldCell prints out value and tags which is too verbose (#4695) (#4701)

This is an automated email from the ASF dual-hosted git repository.

huaxiangsun pushed a commit to branch branch-2
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/branch-2 by this push:
 new b25ded026b7 HBASE-27296 Some Cell's implementation of toString() such 
as IndividualBytesFieldCell prints out value and tags which is too verbose 
(#4695) (#4701)
b25ded026b7 is described below

commit b25ded026b7ce01e2b661352cce6464885a0d738
Author: huaxiangsun 
AuthorDate: Mon Aug 15 09:16:29 2022 -0700

HBASE-27296 Some Cell's implementation of toString() such as 
IndividualBytesFieldCell prints out value and tags which is too verbose (#4695) 
(#4701)

Signed-off-by: Nick Dimiduk 
---
 .../src/main/java/org/apache/hadoop/hbase/ByteBufferKeyValue.java   | 2 +-
 .../src/main/java/org/apache/hadoop/hbase/IndividualBytesFieldCell.java | 2 +-
 .../src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git 
a/hbase-common/src/main/java/org/apache/hadoop/hbase/ByteBufferKeyValue.java 
b/hbase-common/src/main/java/org/apache/hadoop/hbase/ByteBufferKeyValue.java
index 6c1c510ccb8..9c668c1cc3f 100644
--- a/hbase-common/src/main/java/org/apache/hadoop/hbase/ByteBufferKeyValue.java
+++ b/hbase-common/src/main/java/org/apache/hadoop/hbase/ByteBufferKeyValue.java
@@ -294,7 +294,7 @@ public class ByteBufferKeyValue extends 
ByteBufferExtendedCell {
 
   @Override
   public String toString() {
-return CellUtil.toString(this, true);
+return CellUtil.toString(this, false);
   }
 
   @Override
diff --git 
a/hbase-common/src/main/java/org/apache/hadoop/hbase/IndividualBytesFieldCell.java
 
b/hbase-common/src/main/java/org/apache/hadoop/hbase/IndividualBytesFieldCell.java
index 77d35db3ffb..8601232b09d 100644
--- 
a/hbase-common/src/main/java/org/apache/hadoop/hbase/IndividualBytesFieldCell.java
+++ 
b/hbase-common/src/main/java/org/apache/hadoop/hbase/IndividualBytesFieldCell.java
@@ -293,6 +293,6 @@ public class IndividualBytesFieldCell implements 
ExtendedCell, Cloneable {
 
   @Override
   public String toString() {
-return CellUtil.toString(this, true);
+return CellUtil.toString(this, false);
   }
 }
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
index 852306bd251..63d1cee2b13 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
@@ -1510,7 +1510,7 @@ public abstract class HFileReaderImpl implements 
HFile.Reader, Configurable {
 
 @Override
 public String getKeyString() {
-  return CellUtil.toString(getKey(), true);
+  return CellUtil.toString(getKey(), false);
 }
 
 @Override



[hbase-site] branch asf-site updated: INFRA-10751 Empty commit

This is an automated email from the ASF dual-hosted git repository.

git-site-role pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/hbase-site.git


The following commit(s) were added to refs/heads/asf-site by this push:
 new 4db8a12c08 INFRA-10751 Empty commit
4db8a12c08 is described below

commit 4db8a12c080a13848fefdcee1244df45d0b166f5
Author: jenkins 
AuthorDate: Mon Aug 15 14:43:53 2022 +

INFRA-10751 Empty commit



[hbase] branch branch-2.5 updated (6cedefc1922 -> 7c226727c00)

This is an automated email from the ASF dual-hosted git repository.

zhangduo pushed a change to branch branch-2.5
in repository https://gitbox.apache.org/repos/asf/hbase.git


from 6cedefc1922 HBASE-27221 Bump spotless version to 2.24.1 (#4693)
 add 7c226727c00 HBASE-27299 Bump minimum hadoop 2 version to 2.10.2 (#4699)

No new revisions were added by this update.

Summary of changes:
 pom.xml | 98 -
 1 file changed, 97 insertions(+), 1 deletion(-)



[hbase] branch branch-2 updated: HBASE-27299 Bump minimum hadoop 2 version to 2.10.2 (#4699)

This is an automated email from the ASF dual-hosted git repository.

zhangduo pushed a commit to branch branch-2
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/branch-2 by this push:
 new 60394e95a7c HBASE-27299 Bump minimum hadoop 2 version to 2.10.2 (#4699)
60394e95a7c is described below

commit 60394e95a7ccf39fb86e14981a79e90ce3dd8734
Author: Duo Zhang 
AuthorDate: Mon Aug 15 18:54:46 2022 +0800

HBASE-27299 Bump minimum hadoop 2 version to 2.10.2 (#4699)

Signed-off-by: Xin Sun 
---
 pom.xml | 98 -
 1 file changed, 97 insertions(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index cb074d14f44..16c3cf8de52 100644
--- a/pom.xml
+++ b/pom.xml
@@ -543,7 +543,7 @@
 3.0.4
 ${compileSource}
 
-2.10.0
+2.10.2
 3.2.4
 

[hbase-connectors] branch master updated: HBASE-27285: Fix sonar report paths (#103)

This is an automated email from the ASF dual-hosted git repository.

psomogyi pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hbase-connectors.git


The following commit(s) were added to refs/heads/master by this push:
 new 496cd58  HBASE-27285: Fix sonar report paths (#103)
496cd58 is described below

commit 496cd582198f71544259ecfa9e207aca9ba18389
Author: Horváth Dóra 
AuthorDate: Mon Aug 15 10:53:40 2022 +0200

HBASE-27285: Fix sonar report paths (#103)

Signed-off-by: Peter Somogyi 
Reviewed-by: Mate Szalay-Beko 
---
 dev-support/code-coverage/run-coverage.sh | 4 ++--
 pom.xml   | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/dev-support/code-coverage/run-coverage.sh 
b/dev-support/code-coverage/run-coverage.sh
index c56d846..5379e01 100755
--- a/dev-support/code-coverage/run-coverage.sh
+++ b/dev-support/code-coverage/run-coverage.sh
@@ -43,8 +43,8 @@ MAIN_POM="${SCRIPT_DIR}/../../pom.xml"
 
   # If the required parameters are given, the code coverage results are 
uploaded to the SonarQube Server
   if [ -n "$SONAR_LOGIN" ] && [ -n "$SONAR_PROJECT_KEY" ] && [ -n "$SONAR_URL" 
]; then
-mvn -B -e -Pcoverage sonar:sonar 
-Dsonar.clover.reportPath=./target/clover/clover.xml \
-  -Dsonar.host.url="$SONAR_URL" -Dsonar.login="$SONAR_LOGIN" 
-Dsonar.projectKey="$SONAR_PROJECT_KEY" 
-Dsonar.projectName="$SONAR_PROJECT_NAME"
+mvn -B -e -Pcoverage sonar:sonar -Dsonar.host.url="$SONAR_URL" 
-Dsonar.login="$SONAR_LOGIN" \
+   -Dsonar.projectKey="$SONAR_PROJECT_KEY" 
-Dsonar.projectName="$SONAR_PROJECT_NAME"
   fi
 }
 
diff --git a/pom.xml b/pom.xml
index ba889f6..186d21f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -733,10 +733,10 @@
 **/target/classes
 
${project.build.directory}/surefire-reports
 
-  
${sonar.projectBaseDir}/test-reporting/target/site/jacoco-aggregate/jacoco.xml
+  
${sonar.projectBaseDir}/test-reporting/target/code-coverage/jacoco-reports/jacoco.xml
 
 
-  ${sonar.projectBaseDir}/spark/hbase-spark/target/scoverage.xml
+  
${sonar.projectBaseDir}/test-reporting/target/code-coverage/scoverage-reports/scoverage.xml
 
 
 ${project.basedir}



[hbase] 01/02: HBASE-27301 Add Delete addFamilyVersion timestamp verify (#4700)

This is an automated email from the ASF dual-hosted git repository.

zhangduo pushed a commit to branch branch-2
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit 1b5d20dcf654c97e0a8e8938cab3e2c66b9aea8c
Author: SiCheng-Zheng <643463...@qq.com>
AuthorDate: Mon Aug 15 15:19:17 2022 +0800

HBASE-27301 Add Delete addFamilyVersion  timestamp verify (#4700)

Co-authored-by: SiCheng-Zheng 
Signed-off-by: Duo Zhang 
(cherry picked from commit b531e71455423a9f5a5956da90026085dde96117)
---
 hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java | 3 +++
 1 file changed, 3 insertions(+)

diff --git 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java
index 66716bea9cc..4b500b09d6e 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java
@@ -200,6 +200,9 @@ public class Delete extends Mutation {
* @return this for invocation chaining
*/
   public Delete addFamilyVersion(final byte[] family, final long timestamp) {
+if (timestamp < 0) {
+  throw new IllegalArgumentException("Timestamp cannot be negative. ts=" + 
timestamp);
+}
 List list = getCellList(family);
 list.add(new KeyValue(row, family, null, timestamp, 
KeyValue.Type.DeleteFamilyVersion));
 return this;



[hbase] 02/02: HBASE-27221 Bump spotless version to 2.24.1 (#4693)

This is an automated email from the ASF dual-hosted git repository.

zhangduo pushed a commit to branch branch-2
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit b83165cf60cdaa8d11dbbb9830197491222a3bd4
Author: Duo Zhang 
AuthorDate: Mon Aug 15 15:19:57 2022 +0800

HBASE-27221 Bump spotless version to 2.24.1 (#4693)

Signed-off-by: Xin Sun 
(cherry picked from commit 9215066e2b8e114fb4e96f1b701a8cbd85638284)
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index 26308034773..cb074d14f44 100644
--- a/pom.xml
+++ b/pom.xml
@@ -628,7 +628,7 @@
 3.0.0-M6
 2.12
 1.0.1
-2.22.2
+2.24.1
 3.12.0
 
 0.21
@@ -2408,7 +2408,7 @@
*/
   to
   /** Returns blabla */
-  See https://errorprone.info/bugpattern/FutureReturnValueIgnored
+  See https://errorprone.info/bugpattern/EmptyBlockTag
 -->
 
   Purge single returns tag multi line



[hbase] branch branch-2 updated (f36b34984fc -> b83165cf60c)

This is an automated email from the ASF dual-hosted git repository.

zhangduo pushed a change to branch branch-2
in repository https://gitbox.apache.org/repos/asf/hbase.git


from f36b34984fc HBASE-23723 Ensure MOB compaction works in optimized mode 
after snapshot clone (#4617)
 new 1b5d20dcf65 HBASE-27301 Add Delete addFamilyVersion  timestamp verify 
(#4700)
 new b83165cf60c HBASE-27221 Bump spotless version to 2.24.1 (#4693)

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java | 3 +++
 pom.xml   | 4 ++--
 2 files changed, 5 insertions(+), 2 deletions(-)



[hbase] branch branch-2.5 updated (da472aac06b -> 6cedefc1922)

This is an automated email from the ASF dual-hosted git repository.

zhangduo pushed a change to branch branch-2.5
in repository https://gitbox.apache.org/repos/asf/hbase.git


from da472aac06b HBASE-27298 Bump hadoop version to 3.2.4 (#4696)
 add 0ceb3577fcd HBASE-27301 Add Delete addFamilyVersion  timestamp verify 
(#4700)
 add 6cedefc1922 HBASE-27221 Bump spotless version to 2.24.1 (#4693)

No new revisions were added by this update.

Summary of changes:
 hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java | 3 +++
 pom.xml   | 4 ++--
 2 files changed, 5 insertions(+), 2 deletions(-)



[hbase] branch branch-2.4 updated (b9a13eba674 -> 58f6bdfa510)

This is an automated email from the ASF dual-hosted git repository.

zhangduo pushed a change to branch branch-2.4
in repository https://gitbox.apache.org/repos/asf/hbase.git


from b9a13eba674 HBASE-27281 Add default implementation for 
Connection$getClusterId (#4683)
 new 6f9b8576207 HBASE-27301 Add Delete addFamilyVersion  timestamp verify 
(#4700)
 new 58f6bdfa510 HBASE-27221 Bump spotless version to 2.24.1 (#4693)

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java | 3 +++
 pom.xml   | 4 ++--
 2 files changed, 5 insertions(+), 2 deletions(-)



[hbase] 01/02: HBASE-27301 Add Delete addFamilyVersion timestamp verify (#4700)

This is an automated email from the ASF dual-hosted git repository.

zhangduo pushed a commit to branch branch-2.4
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit 6f9b8576207d85182ff1b4fe07869e96a657f4a0
Author: SiCheng-Zheng <643463...@qq.com>
AuthorDate: Mon Aug 15 15:19:17 2022 +0800

HBASE-27301 Add Delete addFamilyVersion  timestamp verify (#4700)

Co-authored-by: SiCheng-Zheng 
Signed-off-by: Duo Zhang 
(cherry picked from commit b531e71455423a9f5a5956da90026085dde96117)
---
 hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java | 3 +++
 1 file changed, 3 insertions(+)

diff --git 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java
index d8fc09c55d8..8dabf0671a0 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java
@@ -200,6 +200,9 @@ public class Delete extends Mutation {
* @return this for invocation chaining
*/
   public Delete addFamilyVersion(final byte[] family, final long timestamp) {
+if (timestamp < 0) {
+  throw new IllegalArgumentException("Timestamp cannot be negative. ts=" + 
timestamp);
+}
 List list = getCellList(family);
 list.add(new KeyValue(row, family, null, timestamp, 
KeyValue.Type.DeleteFamilyVersion));
 return this;



[hbase] 02/02: HBASE-27221 Bump spotless version to 2.24.1 (#4693)

This is an automated email from the ASF dual-hosted git repository.

zhangduo pushed a commit to branch branch-2.4
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit 58f6bdfa51071b659228d32c11abab1407f445fa
Author: Duo Zhang 
AuthorDate: Mon Aug 15 15:19:57 2022 +0800

HBASE-27221 Bump spotless version to 2.24.1 (#4693)

Signed-off-by: Xin Sun 
(cherry picked from commit 9215066e2b8e114fb4e96f1b701a8cbd85638284)

 Conflicts:
pom.xml
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index 622a82049fb..3a75ff418c9 100755
--- a/pom.xml
+++ b/pom.xml
@@ -624,7 +624,7 @@
 3.0.0-M6
 2.12
 1.0.1
-2.22.2
+2.24.1
 4.1.1
 3.12.0
 
@@ -2242,7 +2242,7 @@
*/
   to
   /** Returns blabla */
-  See https://errorprone.info/bugpattern/FutureReturnValueIgnored
+  See https://errorprone.info/bugpattern/EmptyBlockTag
 -->
 
   Purge single returns tag multi line



[hbase] branch master updated: HBASE-27221 Bump spotless version to 2.24.1 (#4693)

This is an automated email from the ASF dual-hosted git repository.

zhangduo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/master by this push:
 new 9215066e2b8 HBASE-27221 Bump spotless version to 2.24.1 (#4693)
9215066e2b8 is described below

commit 9215066e2b8e114fb4e96f1b701a8cbd85638284
Author: Duo Zhang 
AuthorDate: Mon Aug 15 15:19:57 2022 +0800

HBASE-27221 Bump spotless version to 2.24.1 (#4693)

Signed-off-by: Xin Sun 
---
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index da0a6aa2677..02f1b670217 100644
--- a/pom.xml
+++ b/pom.xml
@@ -851,7 +851,7 @@
 3.0.0-M6
 2.12
 1.0.1
-2.22.2
+2.24.1
 3.12.0
 
 0.21
@@ -2730,7 +2730,7 @@
*/
   to
   /** Returns blabla */
-  See https://errorprone.info/bugpattern/FutureReturnValueIgnored
+  See https://errorprone.info/bugpattern/EmptyBlockTag
 -->
 
   Purge single returns tag multi line



[hbase] branch master updated: HBASE-27301 Add Delete addFamilyVersion timestamp verify (#4700)

This is an automated email from the ASF dual-hosted git repository.

zhangduo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/master by this push:
 new b531e714554 HBASE-27301 Add Delete addFamilyVersion  timestamp verify 
(#4700)
b531e714554 is described below

commit b531e71455423a9f5a5956da90026085dde96117
Author: SiCheng-Zheng <643463...@qq.com>
AuthorDate: Mon Aug 15 15:19:17 2022 +0800

HBASE-27301 Add Delete addFamilyVersion  timestamp verify (#4700)

Co-authored-by: SiCheng-Zheng 
Signed-off-by: Duo Zhang 
---
 hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java | 3 +++
 1 file changed, 3 insertions(+)

diff --git 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java
index 545e8c38c4b..8ec670d445f 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Delete.java
@@ -190,6 +190,9 @@ public class Delete extends Mutation {
* @return this for invocation chaining
*/
   public Delete addFamilyVersion(final byte[] family, final long timestamp) {
+if (timestamp < 0) {
+  throw new IllegalArgumentException("Timestamp cannot be negative. ts=" + 
timestamp);
+}
 List list = getCellList(family);
 list.add(new KeyValue(row, family, null, timestamp, 
KeyValue.Type.DeleteFamilyVersion));
 return this;