Skip to content

HBASE-22582 The Compaction writer may access the lastCell whose memor… - #341

Merged
openinx merged 1 commit into
apache:masterfrom
openinx:master
Jul 4, 2019
Merged

HBASE-22582 The Compaction writer may access the lastCell whose memor…#341
openinx merged 1 commit into
apache:masterfrom
openinx:master

Conversation

@openinx

Copy link
Copy Markdown
Member

…y has been released when appending fileInfo in the final

@openinx

Copy link
Copy Markdown
MemberAuthor

Will try to add few UT to address this bug.

@openinx
openinx requested review from apurtell and busbeyJune 26, 2019 14:06
@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
0reexec24Docker mode activated.
_ Prechecks _
+1hbaseanti0Patch does not have any anti-patterns.
+1@author0The patch does not contain any @author tags.
-0test4tests0The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
_ master Compile Tests _
+1mvninstall262master passed
+1compile57master passed
+1checkstyle69master passed
+1shadedjars267branch has no errors when building our shaded downstream artifacts.
+1findbugs202master passed
+1javadoc34master passed
_ Patch Compile Tests _
+1mvninstall239the patch passed
+1compile53the patch passed
+1javac53the patch passed
+1checkstyle70hbase-server: The patch generated 0 new + 40 unchanged - 1 fixed = 40 total (was 41)
+1whitespace0The patch has no whitespace issues.
+1shadedjars263patch has no errors when building our shaded downstream artifacts.
+1hadoopcheck726Patch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.
+1findbugs215the patch passed
+1javadoc29the patch passed
_ Other Tests _
+1unit8288hbase-server in the patch passed.
+1asflicense29The patch does not generate ASF License warnings.
11129
SubsystemReport/Notes
DockerClient=17.05.0-ce Server=17.05.0-ce base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-341/1/artifact/out/Dockerfile
GITHUB PR#341
Optional Testsdupname asflicense javac javadoc unit findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
unameLinux 5c9935f9e0cb 4.4.0-139-generic #165-Ubuntu SMP Wed Oct 24 10:58:50 UTC 2018 x86_64 GNU/Linux
Build toolmaven
Personality/testptch/patchprocess/precommit/personality/provided.sh
git revisionmaster / 0198868
mavenversion: Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-17T18:33:14Z)
Default Java1.8.0_181
findbugsv3.1.11
Test Resultshttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-341/1/testReport/
Max. process+thread count4648 (vs. ulimit of 10000)
modulesC: hbase-server U: hbase-server
Console outputhttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-341/1/console
Powered byApache Yetus 0.9.0 http://yetus.apache.org

This message was automatically generated.

@the-sakthi

Copy link
Copy Markdown
Member

@openinx , I see some syntax/style fixes along with the "beforeShipped()" fix. I can confirm that there are other places as well in these 3 files were such changes could be welcomed. Do you think that we should include those as well here?

@openinx

Copy link
Copy Markdown
MemberAuthor

@jatsakthi Yeah, I think we can fix the checksytle in this issue.

"Interrupted while control throughput of compacting " + compactionName);
} finally {
throughputController.finish(compactionName);
((ShipperListener) writer).beforeShipped();

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Below in Compactor, call beforeShipped() before finishing the throughputController. Its ok for any order. Still we can maintain one order.

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, I will provide a UT to address this bug but am working on other things now... will update this patch later.

+ String.format(", rate=%.2f kB/sec", (bytesWrittenProgressForLog / 1024.0)
/ ((now - lastMillis) / 1000.0)) + ", throughputController is "
+ throughputController);
double rate = (bytesWrittenProgressForLog / 1024.0) / ((now - lastMillis) / 1000.0);

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What abt the String formatting on the Double value which we were doing. Missing that in log now. Below one more place too.

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Emm... maybe I need to format the rate first before put it as a arg in LOG.debug, thanks .

@anoopsjohnanoopsjohn left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
0reexec213Docker mode activated.
_ Prechecks _
+1hbaseanti0Patch does not have any anti-patterns.
+1@author0The patch does not contain any @author tags.
+1test4tests0The patch appears to include 1 new or modified test files.
_ master Compile Tests _
+1mvninstall312master passed
+1compile55master passed
+1checkstyle70master passed
+1shadedjars285branch has no errors when building our shaded downstream artifacts.
+1findbugs218master passed
+1javadoc32master passed
_ Patch Compile Tests _
+1mvninstall259the patch passed
+1compile51the patch passed
+1javac51the patch passed
+1checkstyle68hbase-server: The patch generated 0 new + 66 unchanged - 1 fixed = 66 total (was 67)
+1whitespace0The patch has no whitespace issues.
+1shadedjars259patch has no errors when building our shaded downstream artifacts.
+1hadoopcheck782Patch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.
+1findbugs203the patch passed
+1javadoc30the patch passed
_ Other Tests _
-1unit15853hbase-server in the patch failed.
+1asflicense31The patch does not generate ASF License warnings.
19050
ReasonTests
Failed junit testshadoop.hbase.master.TestAssignmentManagerMetrics
hadoop.hbase.master.TestSplitWALManager
SubsystemReport/Notes
DockerClient=17.05.0-ce Server=17.05.0-ce base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-341/2/artifact/out/Dockerfile
GITHUB PR#341
Optional Testsdupname asflicense javac javadoc unit findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
unameLinux 516e633f3a5b 4.4.0-137-generic #163-Ubuntu SMP Mon Sep 24 13:14:43 UTC 2018 x86_64 GNU/Linux
Build toolmaven
Personality/testptch/patchprocess/precommit/personality/provided.sh
git revisionmaster / bdf9d56
mavenversion: Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-17T18:33:14Z)
Default Java1.8.0_181
findbugsv3.1.11
unithttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-341/2/artifact/out/patch-unit-hbase-server.txt
Test Resultshttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-341/2/testReport/
Max. process+thread count5305 (vs. ulimit of 10000)
modulesC: hbase-server U: hbase-server
Console outputhttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-341/2/console
Powered byApache Yetus 0.9.0 http://yetus.apache.org

This message was automatically generated.

+ String.format(", rate=%.2f kB/sec", (bytesWrittenProgressForLog / 1024.0)
/ ((now - lastMillis) / 1000.0)) + ", throughputController is "
+ throughputController);
String rate = String.format("%.2f",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if (LOG.isDebugEnabled())? Then can skip to generate "rate" String in production environment.

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Have an existed isDebugEnabled before in line#312 :-)

+ String.format(", rate=%.2f kB/sec", (bytesWrittenProgressForLog / 1024.0)
/ ((now - lastMillis) / 1000.0)) + ", throughputController is "
+ throughputController);
String rate = String.format("%.2f",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ditto. if (LOG.isDebugEnabled())?

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please see line#449.

throw new InterruptedIOException(
"Interrupted while control throughput of compacting " + compactionName);
} finally {
((ShipperListener) writer).beforeShipped();

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add comment here, too?

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK

…y has been released when appending fileInfo in the final
@openinx
openinx merged commit ac4e528 into apache:masterJul 4, 2019
asfgit pushed a commit that referenced this pull request Jul 4, 2019
…y has been released when appending fileInfo in the final (#341)
asfgit pushed a commit that referenced this pull request Jul 4, 2019
…y has been released when appending fileInfo in the final (#341)
asfgit pushed a commit that referenced this pull request Jul 4, 2019
…y has been released when appending fileInfo in the final (#341)
asfgit pushed a commit that referenced this pull request Jul 4, 2019
…y has been released when appending fileInfo in the final (#341)
@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
0reexec68Docker mode activated.
_ Prechecks _
+1hbaseanti0Patch does not have any anti-patterns.
+1@author0The patch does not contain any @author tags.
+1test4tests0The patch appears to include 1 new or modified test files.
_ master Compile Tests _
+1mvninstall280master passed
+1compile57master passed
+1checkstyle82master passed
+1shadedjars292branch has no errors when building our shaded downstream artifacts.
+1findbugs241master passed
+1javadoc38master passed
_ Patch Compile Tests _
+1mvninstall273the patch passed
+1compile64the patch passed
+1javac64the patch passed
+1checkstyle86hbase-server: The patch generated 0 new + 66 unchanged - 1 fixed = 66 total (was 67)
+1whitespace0The patch has no whitespace issues.
+1shadedjars306patch has no errors when building our shaded downstream artifacts.
+1hadoopcheck868Patch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.
+1findbugs257the patch passed
+1javadoc36the patch passed
_ Other Tests _
-1unit17098hbase-server in the patch failed.
+1asflicense32The patch does not generate ASF License warnings.
20428
ReasonTests
Failed junit testshadoop.hbase.regionserver.TestSplitTransactionOnCluster
SubsystemReport/Notes
DockerClient=18.09.5 Server=18.09.5 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-341/3/artifact/out/Dockerfile
GITHUB PR#341
Optional Testsdupname asflicense javac javadoc unit findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
unameLinux 1697b6eaaace 4.15.0-52-generic #56-Ubuntu SMP Tue Jun 4 22:49:08 UTC 2019 x86_64 GNU/Linux
Build toolmaven
Personality/testptch/patchprocess/precommit/personality/provided.sh
git revisionmaster / a4738e5
mavenversion: Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-17T18:33:14Z)
Default Java1.8.0_181
findbugsv3.1.11
unithttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-341/3/artifact/out/patch-unit-hbase-server.txt
Test Resultshttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-341/3/testReport/
Max. process+thread count4813 (vs. ulimit of 10000)
modulesC: hbase-server U: hbase-server
Console outputhttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-341/3/console
Powered byApache Yetus 0.9.0 http://yetus.apache.org

This message was automatically generated.

infraio pushed a commit to infraio/hbase that referenced this pull request Aug 17, 2020
…y has been released when appending fileInfo in the final (apache#341)
symat pushed a commit to symat/hbase that referenced this pull request Feb 17, 2021
…y has been released when appending fileInfo in the final (apache#341)
(cherry picked from commit 77e5e5c)
Change-Id: Id64bb99efa1b9916189e7179fd316be932ece093
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

@openinx@Apache-HBase@the-sakthi@infraio@anoopsjohn