Skip to content

HBASE-23157 WAL unflushed seqId tracking may wrong when Durability.AS… - #762

Merged
Apache9 merged 1 commit into
apache:masterfrom
Apache9:HBASE-23157
Aug 10, 2020
Merged

HBASE-23157 WAL unflushed seqId tracking may wrong when Durability.AS…#762
Apache9 merged 1 commit into
apache:masterfrom
Apache9:HBASE-23157

Conversation

@Apache9

Copy link
Copy Markdown
Contributor

…YNC_WAL is used

@Apache9

Copy link
Copy Markdown
ContributorAuthor

@saintstack@binlijin PTAL. Thanks.

@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
💙reexec1m 12sDocker mode activated.
_ Prechecks _
💚dupname0m 1sNo case conflicting files found.
💚hbaseanti0m 0sPatch does not have any anti-patterns.
💚@author0m 0sThe patch does not contain any @author tags.
💚test4tests0m 0sThe patch appears to include 5 new or modified test files.
_ master Compile Tests _
💙mvndep0m 33sMaven dependency ordering for branch
💚mvninstall5m 43smaster passed
💚compile1m 20smaster passed
💚checkstyle2m 0smaster passed
💚shadedjars5m 2sbranch has no errors when building our shaded downstream artifacts.
💚javadoc0m 58smaster passed
💙spotbugs4m 32sUsed deprecated FindBugs config; considering switching to SpotBugs.
💚findbugs5m 20smaster passed
_ Patch Compile Tests _
💙mvndep0m 14sMaven dependency ordering for patch
💚mvninstall5m 30sthe patch passed
💚compile1m 22sthe patch passed
💚javac1m 22sthe patch passed
💔checkstyle1m 32shbase-server: The patch generated 1 new + 289 unchanged - 2 fixed = 290 total (was 291)
💚whitespace0m 0sThe patch has no whitespace issues.
💚shadedjars5m 0spatch has no errors when building our shaded downstream artifacts.
💚hadoopcheck17m 48sPatch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.
💔javadoc0m 42shbase-server generated 1 new + 0 unchanged - 0 fixed = 1 total (was 0)
💚findbugs5m 50sthe patch passed
_ Other Tests _
💚unit2m 59shbase-common in the patch passed.
💔unit227m 12shbase-server in the patch failed.
💚asflicense0m 49sThe patch does not generate ASF License warnings.
300m 29s
SubsystemReport/Notes
DockerClient=19.03.4 Server=19.03.4 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/artifact/out/Dockerfile
GITHUB PR#762
Optional Testsdupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
unameLinux 9f57316741a1 4.15.0-66-generic #75-Ubuntu SMP Tue Oct 1 05:24:09 UTC 2019 x86_64 GNU/Linux
Build toolmaven
Personality/home/jenkins/jenkins-slave/workspace/HBase-PreCommit-GitHub-PR_PR-762/out/precommit/personality/provided.sh
git revisionmaster / d7deafa
Default Java1.8.0_181
checkstylehttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/artifact/out/diff-checkstyle-hbase-server.txt
javadochttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/artifact/out/diff-javadoc-javadoc-hbase-server.txt
unithttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/artifact/out/patch-unit-hbase-server.txt
Test Resultshttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/testReport/
Max. process+thread count4674 (vs. ulimit of 10000)
modulesC: hbase-common hbase-server U: .
Console outputhttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/console
versionsgit=2.11.0 maven=2018-06-17T18:33:14Z) findbugs=3.1.11
Powered byApache Yetus 0.11.0 https://yetus.apache.org

This message was automatically generated.

@saintstacksaintstack 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.

I like the idea. Worried about incrementing sequenceids outside of mvcc.

// then it will be recorded as the lowestUnflushedSeqId by the above update method, which is
// less than the current maxFlushedSeqId. And if next time we only flush the family with this
// unusual lowestUnflushedSeqId, the maxFlushedSeqId will go backwards.
// This is an unexpected behavior so we should fix it, otherwise it may cause unexpected

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.

How we going to fix it? Can't we drive through the flush marker before completing the flush?

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

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

Then we need to do a wal sync under the updateLock.writeLock, which will impact the performance.

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.

... maybe a slight hiccup for the async wal case -- maybe, given sync'ing to HDFS is such an erratic affair -- but we will also be more 'correct' having pushed out all in the ring buffer ahead of this flush sync w/o having to rewrite their sequenceid.

// This is an unexpected behavior so we should fix it, otherwise it may cause unexpected
// behavior in other area and then cause data loss maybe.
// The solution here is a bit hack but fine. Just replace the lowestUnflushedSeqId with
// maxFlushedSeqId + 1 if it is lesser. Durability.ASYNC_WAL means we do not care data loss for

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.

Should we +1 it and not just let it be the maxFlushedSeqID? The maxFlushedSeqId comes from mvcc. +1'ing outside of mvcc management could have an interesting side-effect not seen currently where next edit given out by mvcc might clash w/ this +1'd record.

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

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

See the comment below, I explain why +1 is safe. The way we get the maxFlushedSeqId is mvcc -1, so here we just add it back.

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.

Yeah. I read that. Seems fragile. Logic is spread about being here and up in caller. Messing w/ sequenceid w/o going via mvcc will bite us later I think.

We have to do this math?

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

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

It is all about the meaning of these sequence ids. The maxFlushedSeqId means the maximum flush id that have been flushed, so it must be the current lowest sequence id in memstore - 1, otherwise there will be data loss for the edge record. And here we store the current lowest sequence id in memstore so we have to +1 to get the maxFlushedSeqId.

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.

Are the edits on the ring buffer that are outstanding meant to be part of this flush or are they supposed to be counted in the next flush? Are you adding the +1 so they are not part of the current flush?

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
💙reexec3m 18sDocker mode activated.
_ Prechecks _
💚dupname0m 0sNo case conflicting files found.
💚hbaseanti0m 0sPatch does not have any anti-patterns.
💚@author0m 0sThe patch does not contain any @author tags.
💚test4tests0m 0sThe patch appears to include 5 new or modified test files.
_ master Compile Tests _
💙mvndep0m 33sMaven dependency ordering for branch
💚mvninstall5m 44smaster passed
💚compile1m 19smaster passed
💚checkstyle1m 57smaster passed
💚shadedjars5m 0sbranch has no errors when building our shaded downstream artifacts.
💚javadoc0m 57smaster passed
💙spotbugs4m 30sUsed deprecated FindBugs config; considering switching to SpotBugs.
💚findbugs5m 18smaster passed
_ Patch Compile Tests _
💙mvndep0m 14sMaven dependency ordering for patch
💚mvninstall5m 30sthe patch passed
💚compile1m 19sthe patch passed
💚javac1m 19sthe patch passed
💚checkstyle0m 26sThe patch passed checkstyle in hbase-common
💚checkstyle1m 28shbase-server: The patch generated 0 new + 289 unchanged - 2 fixed = 289 total (was 291)
💚whitespace0m 0sThe patch has no whitespace issues.
💚shadedjars5m 1spatch has no errors when building our shaded downstream artifacts.
💚hadoopcheck17m 20sPatch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.
💚javadoc0m 54sthe patch passed
💚findbugs5m 31sthe patch passed
_ Other Tests _
💚unit2m 56shbase-common in the patch passed.
💚unit229m 27shbase-server in the patch passed.
💚asflicense0m 46sThe patch does not generate ASF License warnings.
302m 8s
SubsystemReport/Notes
DockerClient=19.03.4 Server=19.03.4 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/artifact/out/Dockerfile
GITHUB PR#762
Optional Testsdupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
unameLinux 65033938e96d 4.15.0-66-generic #75-Ubuntu SMP Tue Oct 1 05:24:09 UTC 2019 x86_64 GNU/Linux
Build toolmaven
Personality/home/jenkins/jenkins-slave/workspace/HBase-PreCommit-GitHub-PR_PR-762/out/precommit/personality/provided.sh
git revisionmaster / d7deafa
Default Java1.8.0_181
Test Resultshttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/testReport/
Max. process+thread count4706 (vs. ulimit of 10000)
modulesC: hbase-common hbase-server U: .
Console outputhttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/console
versionsgit=2.11.0 maven=2018-06-17T18:33:14Z) findbugs=3.1.11
Powered byApache Yetus 0.11.0 https://yetus.apache.org

This message was automatically generated.

@binlijin

Copy link
Copy Markdown
Contributor

LGTM

@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec1m 9sDocker mode activated.
_ Prechecks _
+1 💚dupname0m 1sNo case conflicting files found.
+1 💚hbaseanti0m 0sPatch does not have any anti-patterns.
+1 💚@author0m 0sThe patch does not contain any @author tags.
+1 💚test4tests0m 0sThe patch appears to include 5 new or modified test files.
_ master Compile Tests _
+0 🆗mvndep0m 36sMaven dependency ordering for branch
+1 💚mvninstall5m 6smaster passed
+1 💚compile1m 21smaster passed
+1 💚checkstyle1m 53smaster passed
+1 💚shadedjars4m 34sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 57smaster passed
+0 🆗spotbugs4m 11sUsed deprecated FindBugs config; considering switching to SpotBugs.
+1 💚findbugs4m 58smaster passed
_ Patch Compile Tests _
+0 🆗mvndep0m 15sMaven dependency ordering for patch
+1 💚mvninstall5m 4sthe patch passed
+1 💚compile1m 21sthe patch passed
+1 💚javac1m 21sthe patch passed
+1 💚checkstyle0m 26sThe patch passed checkstyle in hbase-common
+1 💚checkstyle1m 26shbase-server: The patch generated 0 new + 280 unchanged - 2 fixed = 280 total (was 282)
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚shadedjars4m 35spatch has no errors when building our shaded downstream artifacts.
+1 💚hadoopcheck15m 40sPatch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.
+1 💚javadoc0m 59sthe patch passed
+1 💚findbugs5m 13sthe patch passed
_ Other Tests _
+1 💚unit3m 9shbase-common in the patch passed.
-1 ❌unit304m 45shbase-server in the patch failed.
+1 💚asflicense0m 56sThe patch does not generate ASF License warnings.
371m 7s
ReasonTests
Failed junit testshadoop.hbase.client.TestSnapshotTemporaryDirectoryWithRegionReplicas
hadoop.hbase.client.TestFromClientSide
SubsystemReport/Notes
DockerClient=19.03.5 Server=19.03.5 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/artifact/out/Dockerfile
GITHUB PR#762
Optional Testsdupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
unameLinux 374163a9e12d 4.15.0-65-generic #74-Ubuntu SMP Tue Sep 17 17:06:04 UTC 2019 x86_64 GNU/Linux
Build toolmaven
Personality/home/jenkins/jenkins-slave/workspace/HBase-PreCommit-GitHub-PR_PR-762/out/precommit/personality/provided.sh
git revisionmaster / 5e34a59
Default Java1.8.0_181
unithttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/artifact/out/patch-unit-hbase-server.txt
Test Resultshttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/testReport/
Max. process+thread count4800 (vs. ulimit of 10000)
modulesC: hbase-common hbase-server U: .
Console outputhttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/console
versionsgit=2.11.0 maven=2018-06-17T18:33:14Z) findbugs=3.1.11
Powered byApache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

@Apache9

Copy link
Copy Markdown
ContributorAuthor

Oh, this one is still pending?

Any other concerns? @saintstack

@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec2m 10sDocker mode activated.
_ Prechecks _
+1 💚dupname0m 0sNo case conflicting files found.
+1 💚hbaseanti0m 0sPatch does not have any anti-patterns.
+1 💚@author0m 0sThe patch does not contain any @author tags.
+1 💚test4tests0m 0sThe patch appears to include 5 new or modified test files.
_ master Compile Tests _
+0 🆗mvndep0m 46sMaven dependency ordering for branch
+1 💚mvninstall6m 52smaster passed
+1 💚compile1m 36smaster passed
+1 💚checkstyle2m 10smaster passed
+1 💚shadedjars5m 11sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 57smaster passed
+0 🆗spotbugs4m 36sUsed deprecated FindBugs config; considering switching to SpotBugs.
+1 💚findbugs5m 23smaster passed
_ Patch Compile Tests _
+0 🆗mvndep0m 14sMaven dependency ordering for patch
+1 💚mvninstall5m 30sthe patch passed
+1 💚compile1m 21sthe patch passed
+1 💚javac1m 21sthe patch passed
+1 💚checkstyle0m 27sThe patch passed checkstyle in hbase-common
+1 💚checkstyle1m 30shbase-server: The patch generated 0 new + 280 unchanged - 2 fixed = 280 total (was 282)
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚shadedjars5m 0spatch has no errors when building our shaded downstream artifacts.
+1 💚hadoopcheck17m 23sPatch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.
+1 💚javadoc0m 55sthe patch passed
+1 💚findbugs5m 32sthe patch passed
_ Other Tests _
+1 💚unit2m 59shbase-common in the patch passed.
-1 ❌unit207m 19shbase-server in the patch failed.
+1 💚asflicense1m 22sThe patch does not generate ASF License warnings.
281m 57s
ReasonTests
Failed junit testshadoop.hbase.util.TestFromClientSide3WoUnsafe
SubsystemReport/Notes
DockerClient=19.03.5 Server=19.03.5 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/artifact/out/Dockerfile
GITHUB PR#762
Optional Testsdupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
unameLinux e12c98f8ddf3 4.15.0-66-generic #75-Ubuntu SMP Tue Oct 1 05:24:09 UTC 2019 x86_64 GNU/Linux
Build toolmaven
Personality/home/jenkins/jenkins-slave/workspace/HBase-PreCommit-GitHub-PR_PR-762/out/precommit/personality/provided.sh
git revisionmaster / 60d9430
Default Java1.8.0_181
unithttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/artifact/out/patch-unit-hbase-server.txt
Test Resultshttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/testReport/
Max. process+thread count4754 (vs. ulimit of 10000)
modulesC: hbase-common hbase-server U: .
Console outputhttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/console
versionsgit=2.11.0 maven=2018-06-17T18:33:14Z) findbugs=3.1.11
Powered byApache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

@saintstacksaintstack 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.

Took another look after doing a bit of study. I could go for this 'hack' if we removed the +1. I could work on a follow-on that does the suggested drive through of the sync edit if that'd help.

// then it will be recorded as the lowestUnflushedSeqId by the above update method, which is
// less than the current maxFlushedSeqId. And if next time we only flush the family with this
// unusual lowestUnflushedSeqId, the maxFlushedSeqId will go backwards.
// This is an unexpected behavior so we should fix it, otherwise it may cause unexpected

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.

... maybe a slight hiccup for the async wal case -- maybe, given sync'ing to HDFS is such an erratic affair -- but we will also be more 'correct' having pushed out all in the ring buffer ahead of this flush sync w/o having to rewrite their sequenceid.

// means we have flushed all the stores so the seq id for actual data should be at least plus 1.
// And if we do not flush all the stores, then the maxFlushedSeqId is calculated by
// lowestUnflushedSeqId - 1, so here let's plus the 1 back.
Long wrappedSeqId = Long.valueOf(maxFlushedSeqId + 1);

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.

The +1 makes me wary. Just add these edits w/ maxFlushedSeqId? Wouldn't that be safer.

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

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

I explained why we need to +1 here, so what's your real problem? If you do not want to +1, you need to change bunch of comments and field names...

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.

Makes sense.

Your comment/explanation here is good. It is also where it should be, in the class named SequenceIdAccounting. Though hard to follow, it should be possible to read this one class to find how sequnceid accounting is done in the system including tricks to keep the system working when the likes of ASYNC_WAL is enabled.

@Apache9

Copy link
Copy Markdown
ContributorAuthor

@saintstack Let's finish this one?

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 25sDocker mode activated.
_ Prechecks _
+1 💚dupname0m 0sNo case conflicting files found.
+1 💚hbaseanti0m 0sPatch does not have any anti-patterns.
+1 💚@author0m 0sThe patch does not contain any @author tags.
_ master Compile Tests _
+0 🆗mvndep0m 22sMaven dependency ordering for branch
+1 💚mvninstall3m 36smaster passed
+1 💚checkstyle1m 35smaster passed
+1 💚spotbugs2m 41smaster passed
_ Patch Compile Tests _
+0 🆗mvndep0m 12sMaven dependency ordering for patch
+1 💚mvninstall3m 21sthe patch passed
+1 💚checkstyle0m 22sThe patch passed checkstyle in hbase-common
+1 💚checkstyle1m 10shbase-server: The patch generated 0 new + 258 unchanged - 2 fixed = 258 total (was 260)
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚hadoopcheck10m 59sPatch does not cause any errors with Hadoop 3.1.2 3.2.1.
+1 💚spotbugs3m 0sthe patch passed
_ Other Tests _
+1 💚asflicense0m 26sThe patch does not generate ASF License warnings.
35m 33s
SubsystemReport/Notes
DockerClient=19.03.12 Server=19.03.12 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#762
Optional Testsdupname asflicense spotbugs hadoopcheck hbaseanti checkstyle
unameLinux 7f86e6449b14 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 975cdf7
Max. process+thread count94 (vs. ulimit of 12500)
modulesC: hbase-common hbase-server U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/console
versionsgit=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f) spotbugs=3.1.12
Powered byApache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 27sDocker mode activated.
-0 ⚠️yetus0m 3sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+0 🆗mvndep0m 24sMaven dependency ordering for branch
+1 💚mvninstall4m 15smaster passed
+1 💚compile1m 31smaster passed
+1 💚shadedjars5m 50sbranch has no errors when building our shaded downstream artifacts.
-0 ⚠️javadoc0m 20shbase-common in master failed.
-0 ⚠️javadoc0m 40shbase-server in master failed.
_ Patch Compile Tests _
+0 🆗mvndep0m 16sMaven dependency ordering for patch
+1 💚mvninstall4m 2sthe patch passed
+1 💚compile1m 29sthe patch passed
+1 💚javac1m 29sthe patch passed
+1 💚shadedjars5m 46spatch has no errors when building our shaded downstream artifacts.
-0 ⚠️javadoc0m 17shbase-common in the patch failed.
-0 ⚠️javadoc0m 39shbase-server in the patch failed.
_ Other Tests _
+1 💚unit1m 32shbase-common in the patch passed.
+1 💚unit134m 35shbase-server in the patch passed.
164m 26s
SubsystemReport/Notes
DockerClient=19.03.12 Server=19.03.12 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR#762
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 12b7868bfec7 4.15.0-60-generic #67-Ubuntu SMP Thu Aug 22 16:55:30 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 975cdf7
Default Java2020-01-14
javadochttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-common.txt
javadochttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-server.txt
javadochttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-common.txt
javadochttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-server.txt
Test Resultshttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/testReport/
Max. process+thread count4085 (vs. ulimit of 12500)
modulesC: hbase-common hbase-server U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/console
versionsgit=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f)
Powered byApache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 24sDocker mode activated.
-0 ⚠️yetus0m 3sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+0 🆗mvndep0m 24sMaven dependency ordering for branch
+1 💚mvninstall3m 35smaster passed
+1 💚compile1m 16smaster passed
+1 💚shadedjars5m 37sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 57smaster passed
_ Patch Compile Tests _
+0 🆗mvndep0m 16sMaven dependency ordering for patch
+1 💚mvninstall3m 31sthe patch passed
+1 💚compile1m 21sthe patch passed
+1 💚javac1m 21sthe patch passed
+1 💚shadedjars5m 30spatch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 58sthe patch passed
_ Other Tests _
+1 💚unit1m 14shbase-common in the patch passed.
+1 💚unit144m 38shbase-server in the patch passed.
171m 51s
SubsystemReport/Notes
DockerClient=19.03.12 Server=19.03.12 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR#762
Optional Testsjavac javadoc unit shadedjars compile
unameLinux c67d19bd252c 4.15.0-60-generic #67-Ubuntu SMP Thu Aug 22 16:55:30 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 975cdf7
Default Java1.8.0_232
Test Resultshttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/testReport/
Max. process+thread count4262 (vs. ulimit of 12500)
modulesC: hbase-common hbase-server U: .
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/console
versionsgit=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f)
Powered byApache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

// means we have flushed all the stores so the seq id for actual data should be at least plus 1.
// And if we do not flush all the stores, then the maxFlushedSeqId is calculated by
// lowestUnflushedSeqId - 1, so here let's plus the 1 back.
Long wrappedSeqId = Long.valueOf(maxFlushedSeqId + 1);

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.

Makes sense.

Your comment/explanation here is good. It is also where it should be, in the class named SequenceIdAccounting. Though hard to follow, it should be possible to read this one class to find how sequnceid accounting is done in the system including tricks to keep the system working when the likes of ASYNC_WAL is enabled.

@Apache9Apache9 self-assigned this Aug 10, 2020
@Apache9Apache9 added the bug label Aug 10, 2020
@Apache9
Apache9 merged commit 726756a into apache:masterAug 10, 2020
asfgit pushed a commit that referenced this pull request Aug 10, 2020
…YNC_WAL is used (#762)
Signed-off-by: stack <stack@apache.org>
asfgit pushed a commit that referenced this pull request Aug 10, 2020
…YNC_WAL is used (#762)
Signed-off-by: stack <stack@apache.org>
asfgit pushed a commit that referenced this pull request Aug 10, 2020
…YNC_WAL is used (#762)
Signed-off-by: stack <stack@apache.org>
clarax pushed a commit to clarax/hbase that referenced this pull request Nov 15, 2020
…YNC_WAL is used (apache#762)
Signed-off-by: stack <stack@apache.org>
wchevreuil pushed a commit to wchevreuil/hbase that referenced this pull request May 24, 2021
…YNC_WAL is used (apache#762)
Signed-off-by: stack <stack@apache.org>
(cherry picked from commit 1cbe383)
Change-Id: Ibdf7ab100974408b97d745d35fb55e59f2a6b82c
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@Apache9@Apache-HBase@binlijin@saintstack