You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ap...@apache.org on 2022/06/23 03:12:41 UTC

[hbase] branch branch-2.4 updated (67592eaba09 -> 847665d9d62)

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

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


    from 67592eaba09 Preparing development version 2.4.14-SNAPSHOT
     new 21481143d8a HBASE-27050 Support unit test pattern matching again (#4447)
     new 847665d9d62 HBASE-27151 TestMultiRespectsLimits.testBlockMultiLimits repeatable failure

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:
 .../io/encoding/BufferedDataBlockEncoder.java      | 24 +++++-----------------
 pom.xml                                            |  1 +
 2 files changed, 6 insertions(+), 19 deletions(-)


[hbase] 01/02: HBASE-27050 Support unit test pattern matching again (#4447)

Posted by ap...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 21481143d8ad1c11b33fbcf3c035bd81fa104fe0
Author: Andrew Purtell <ap...@apache.org>
AuthorDate: Fri May 20 15:07:10 2022 -0700

    HBASE-27050 Support unit test pattern matching again (#4447)
    
    Signed-off-by: Duo Zhang <zh...@apache.org>
    Signed-off-by: Sean Busbey <bu...@apache.org>
    Signed-off-by: Viraj Jasani <vj...@apache.org>
---
 pom.xml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/pom.xml b/pom.xml
index 58d1a8cf787..60230b5cec8 100755
--- a/pom.xml
+++ b/pom.xml
@@ -1477,6 +1477,7 @@
           <configuration>
             <groups>${surefire.firstPartGroups}</groups>
             <failIfNoTests>false</failIfNoTests>
+            <failIfNoSpecifiedTests>false</failIfNoSpecifiedTests>
             <trimStackTrace>false</trimStackTrace>
             <skip>${surefire.skipFirstPart}</skip>
             <forkCount>${surefire.firstPartForkCount}</forkCount>


[hbase] 02/02: HBASE-27151 TestMultiRespectsLimits.testBlockMultiLimits repeatable failure

Posted by ap...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 847665d9d6235e7098f535edcd1b5c6bb47326fb
Author: Andrew Purtell <ap...@apache.org>
AuthorDate: Wed Jun 22 20:11:42 2022 -0700

    HBASE-27151 TestMultiRespectsLimits.testBlockMultiLimits repeatable failure
    
    Revert "HBASE-26856 BufferedDataBlockEncoder.OnheapDecodedCell value can get corrupted"
    
    This reverts commit b2f71f2049c73c53ed7fe1400e8ff25612667b62.
---
 .../io/encoding/BufferedDataBlockEncoder.java      | 24 +++++-----------------
 1 file changed, 5 insertions(+), 19 deletions(-)

diff --git a/hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.java b/hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.java
index 6e5a3bda3af..b155d9b854e 100644
--- a/hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.java
+++ b/hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.java
@@ -232,10 +232,9 @@ abstract class BufferedDataBlockEncoder extends AbstractDataBlockEncoder {
       int tOffset = 0;
       if (this.includeTags) {
         if (this.tagCompressionContext == null) {
+          tagsArray = valAndTagsBuffer.array();
           tOffset =
             valAndTagsBuffer.arrayOffset() + vOffset + this.valueLength + tagsLenSerializationSize;
-          tagsArray = Bytes.copy(valAndTagsBuffer.array(), tOffset, this.tagsLength);
-          tOffset = 0;
         } else {
           tagsArray = Bytes.copy(tagsBuffer, 0, this.tagsLength);
           tOffset = 0;
@@ -244,9 +243,9 @@ abstract class BufferedDataBlockEncoder extends AbstractDataBlockEncoder {
       return new OnheapDecodedCell(Bytes.copy(keyBuffer, 0, this.keyLength),
         currentKey.getRowLength(), currentKey.getFamilyOffset(), currentKey.getFamilyLength(),
         currentKey.getQualifierOffset(), currentKey.getQualifierLength(), currentKey.getTimestamp(),
-        currentKey.getTypeByte(), Bytes.copy(valAndTagsBuffer.array(),
-          valAndTagsBuffer.arrayOffset() + vOffset, this.valueLength),
-        0, this.valueLength, memstoreTS, tagsArray, tOffset, this.tagsLength);
+        currentKey.getTypeByte(), valAndTagsBuffer.array(),
+        valAndTagsBuffer.arrayOffset() + vOffset, this.valueLength, memstoreTS, tagsArray, tOffset,
+        this.tagsLength);
     }
 
     private Cell toOffheapCell(ByteBuffer valAndTagsBuffer, int vOffset,
@@ -255,26 +254,13 @@ abstract class BufferedDataBlockEncoder extends AbstractDataBlockEncoder {
       int tOffset = 0;
       if (this.includeTags) {
         if (this.tagCompressionContext == null) {
+          tagsBuf = valAndTagsBuffer;
           tOffset = vOffset + this.valueLength + tagsLenSerializationSize;
-          byte[] output = new byte[this.tagsLength];
-          ByteBufferUtils.copyFromBufferToArray(output, valAndTagsBuffer, tOffset, 0,
-            this.tagsLength);
-          tagsBuf = ByteBuffer.wrap(output);
-          tOffset = 0;
         } else {
           tagsBuf = ByteBuffer.wrap(Bytes.copy(tagsBuffer, 0, this.tagsLength));
           tOffset = 0;
         }
       }
-
-      if (this.valueLength > 0) {
-        byte[] output = new byte[this.valueLength];
-        ByteBufferUtils.copyFromBufferToArray(output, valAndTagsBuffer, vOffset, 0,
-          this.valueLength);
-        valAndTagsBuffer = ByteBuffer.wrap(output);
-        vOffset = 0;
-      }
-
       return new OffheapDecodedExtendedCell(
         ByteBuffer.wrap(Bytes.copy(keyBuffer, 0, this.keyLength)), currentKey.getRowLength(),
         currentKey.getFamilyOffset(), currentKey.getFamilyLength(), currentKey.getQualifierOffset(),