Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Merged
merged 1 commit into from
Aug 10, 2020

Conversation

Apache9
Copy link
Contributor

@Apache9 Apache9 commented Oct 27, 2019

…YNC_WAL is used

@Apache9 Apache9 requested a review from saintstack October 27, 2019 15:41
@Apache9
Copy link
Contributor Author

Apache9 commented Oct 27, 2019

@saintstack @binlijin PTAL. Thanks.

@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
💙 reexec 1m 12s Docker mode activated.
_ Prechecks _
💚 dupname 0m 1s No case conflicting files found.
💚 hbaseanti 0m 0s Patch does not have any anti-patterns.
💚 @author 0m 0s The patch does not contain any @author tags.
💚 test4tests 0m 0s The patch appears to include 5 new or modified test files.
_ master Compile Tests _
💙 mvndep 0m 33s Maven dependency ordering for branch
💚 mvninstall 5m 43s master passed
💚 compile 1m 20s master passed
💚 checkstyle 2m 0s master passed
💚 shadedjars 5m 2s branch has no errors when building our shaded downstream artifacts.
💚 javadoc 0m 58s master passed
💙 spotbugs 4m 32s Used deprecated FindBugs config; considering switching to SpotBugs.
💚 findbugs 5m 20s master passed
_ Patch Compile Tests _
💙 mvndep 0m 14s Maven dependency ordering for patch
💚 mvninstall 5m 30s the patch passed
💚 compile 1m 22s the patch passed
💚 javac 1m 22s the patch passed
💔 checkstyle 1m 32s hbase-server: The patch generated 1 new + 289 unchanged - 2 fixed = 290 total (was 291)
💚 whitespace 0m 0s The patch has no whitespace issues.
💚 shadedjars 5m 0s patch has no errors when building our shaded downstream artifacts.
💚 hadoopcheck 17m 48s Patch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.
💔 javadoc 0m 42s hbase-server generated 1 new + 0 unchanged - 0 fixed = 1 total (was 0)
💚 findbugs 5m 50s the patch passed
_ Other Tests _
💚 unit 2m 59s hbase-common in the patch passed.
💔 unit 227m 12s hbase-server in the patch failed.
💚 asflicense 0m 49s The patch does not generate ASF License warnings.
300m 29s
Subsystem Report/Notes
Docker Client=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 Tests dupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
uname Linux 9f57316741a1 4.15.0-66-generic #75-Ubuntu SMP Tue Oct 1 05:24:09 UTC 2019 x86_64 GNU/Linux
Build tool maven
Personality /home/jenkins/jenkins-slave/workspace/HBase-PreCommit-GitHub-PR_PR-762/out/precommit/personality/provided.sh
git revision master / d7deafa
Default Java 1.8.0_181
checkstyle https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/artifact/out/diff-checkstyle-hbase-server.txt
javadoc https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/artifact/out/diff-javadoc-javadoc-hbase-server.txt
unit https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/artifact/out/patch-unit-hbase-server.txt
Test Results https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/testReport/
Max. process+thread count 4674 (vs. ulimit of 10000)
modules C: hbase-common hbase-server U: .
Console output https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/console
versions git=2.11.0 maven=2018-06-17T18:33:14Z) findbugs=3.1.11
Powered by Apache Yetus 0.11.0 https://yetus.apache.org

This message was automatically generated.

Copy link
Contributor

@saintstack saintstack left a comment

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
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
Contributor Author

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
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
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
Contributor Author

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
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
Contributor Author

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
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

🎊 +1 overall

Vote Subsystem Runtime Comment
💙 reexec 3m 18s Docker mode activated.
_ Prechecks _
💚 dupname 0m 0s No case conflicting files found.
💚 hbaseanti 0m 0s Patch does not have any anti-patterns.
💚 @author 0m 0s The patch does not contain any @author tags.
💚 test4tests 0m 0s The patch appears to include 5 new or modified test files.
_ master Compile Tests _
💙 mvndep 0m 33s Maven dependency ordering for branch
💚 mvninstall 5m 44s master passed
💚 compile 1m 19s master passed
💚 checkstyle 1m 57s master passed
💚 shadedjars 5m 0s branch has no errors when building our shaded downstream artifacts.
💚 javadoc 0m 57s master passed
💙 spotbugs 4m 30s Used deprecated FindBugs config; considering switching to SpotBugs.
💚 findbugs 5m 18s master passed
_ Patch Compile Tests _
💙 mvndep 0m 14s Maven dependency ordering for patch
💚 mvninstall 5m 30s the patch passed
💚 compile 1m 19s the patch passed
💚 javac 1m 19s the patch passed
💚 checkstyle 0m 26s The patch passed checkstyle in hbase-common
💚 checkstyle 1m 28s hbase-server: The patch generated 0 new + 289 unchanged - 2 fixed = 289 total (was 291)
💚 whitespace 0m 0s The patch has no whitespace issues.
💚 shadedjars 5m 1s patch has no errors when building our shaded downstream artifacts.
💚 hadoopcheck 17m 20s Patch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.
💚 javadoc 0m 54s the patch passed
💚 findbugs 5m 31s the patch passed
_ Other Tests _
💚 unit 2m 56s hbase-common in the patch passed.
💚 unit 229m 27s hbase-server in the patch passed.
💚 asflicense 0m 46s The patch does not generate ASF License warnings.
302m 8s
Subsystem Report/Notes
Docker Client=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 Tests dupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
uname Linux 65033938e96d 4.15.0-66-generic #75-Ubuntu SMP Tue Oct 1 05:24:09 UTC 2019 x86_64 GNU/Linux
Build tool maven
Personality /home/jenkins/jenkins-slave/workspace/HBase-PreCommit-GitHub-PR_PR-762/out/precommit/personality/provided.sh
git revision master / d7deafa
Default Java 1.8.0_181
Test Results https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/testReport/
Max. process+thread count 4706 (vs. ulimit of 10000)
modules C: hbase-common hbase-server U: .
Console output https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/console
versions git=2.11.0 maven=2018-06-17T18:33:14Z) findbugs=3.1.11
Powered by Apache Yetus 0.11.0 https://yetus.apache.org

This message was automatically generated.

@binlijin
Copy link
Contributor

LGTM

@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 9s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 1s No case conflicting files found.
+1 💚 hbaseanti 0m 0s Patch does not have any anti-patterns.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 test4tests 0m 0s The patch appears to include 5 new or modified test files.
_ master Compile Tests _
+0 🆗 mvndep 0m 36s Maven dependency ordering for branch
+1 💚 mvninstall 5m 6s master passed
+1 💚 compile 1m 21s master passed
+1 💚 checkstyle 1m 53s master passed
+1 💚 shadedjars 4m 34s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 57s master passed
+0 🆗 spotbugs 4m 11s Used deprecated FindBugs config; considering switching to SpotBugs.
+1 💚 findbugs 4m 58s master passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 15s Maven dependency ordering for patch
+1 💚 mvninstall 5m 4s the patch passed
+1 💚 compile 1m 21s the patch passed
+1 💚 javac 1m 21s the patch passed
+1 💚 checkstyle 0m 26s The patch passed checkstyle in hbase-common
+1 💚 checkstyle 1m 26s hbase-server: The patch generated 0 new + 280 unchanged - 2 fixed = 280 total (was 282)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 shadedjars 4m 35s patch has no errors when building our shaded downstream artifacts.
+1 💚 hadoopcheck 15m 40s Patch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.
+1 💚 javadoc 0m 59s the patch passed
+1 💚 findbugs 5m 13s the patch passed
_ Other Tests _
+1 💚 unit 3m 9s hbase-common in the patch passed.
-1 ❌ unit 304m 45s hbase-server in the patch failed.
+1 💚 asflicense 0m 56s The patch does not generate ASF License warnings.
371m 7s
Reason Tests
Failed junit tests hadoop.hbase.client.TestSnapshotTemporaryDirectoryWithRegionReplicas
hadoop.hbase.client.TestFromClientSide
Subsystem Report/Notes
Docker Client=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 Tests dupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
uname Linux 374163a9e12d 4.15.0-65-generic #74-Ubuntu SMP Tue Sep 17 17:06:04 UTC 2019 x86_64 GNU/Linux
Build tool maven
Personality /home/jenkins/jenkins-slave/workspace/HBase-PreCommit-GitHub-PR_PR-762/out/precommit/personality/provided.sh
git revision master / 5e34a59
Default Java 1.8.0_181
unit https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/artifact/out/patch-unit-hbase-server.txt
Test Results https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/testReport/
Max. process+thread count 4800 (vs. ulimit of 10000)
modules C: hbase-common hbase-server U: .
Console output https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/1/console
versions git=2.11.0 maven=2018-06-17T18:33:14Z) findbugs=3.1.11
Powered by Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

@Apache9
Copy link
Contributor Author

Apache9 commented Dec 5, 2019

Oh, this one is still pending?

Any other concerns? @saintstack

@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 2m 10s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+1 💚 hbaseanti 0m 0s Patch does not have any anti-patterns.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 test4tests 0m 0s The patch appears to include 5 new or modified test files.
_ master Compile Tests _
+0 🆗 mvndep 0m 46s Maven dependency ordering for branch
+1 💚 mvninstall 6m 52s master passed
+1 💚 compile 1m 36s master passed
+1 💚 checkstyle 2m 10s master passed
+1 💚 shadedjars 5m 11s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 57s master passed
+0 🆗 spotbugs 4m 36s Used deprecated FindBugs config; considering switching to SpotBugs.
+1 💚 findbugs 5m 23s master passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 14s Maven dependency ordering for patch
+1 💚 mvninstall 5m 30s the patch passed
+1 💚 compile 1m 21s the patch passed
+1 💚 javac 1m 21s the patch passed
+1 💚 checkstyle 0m 27s The patch passed checkstyle in hbase-common
+1 💚 checkstyle 1m 30s hbase-server: The patch generated 0 new + 280 unchanged - 2 fixed = 280 total (was 282)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 shadedjars 5m 0s patch has no errors when building our shaded downstream artifacts.
+1 💚 hadoopcheck 17m 23s Patch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.
+1 💚 javadoc 0m 55s the patch passed
+1 💚 findbugs 5m 32s the patch passed
_ Other Tests _
+1 💚 unit 2m 59s hbase-common in the patch passed.
-1 ❌ unit 207m 19s hbase-server in the patch failed.
+1 💚 asflicense 1m 22s The patch does not generate ASF License warnings.
281m 57s
Reason Tests
Failed junit tests hadoop.hbase.util.TestFromClientSide3WoUnsafe
Subsystem Report/Notes
Docker Client=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 Tests dupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
uname Linux e12c98f8ddf3 4.15.0-66-generic #75-Ubuntu SMP Tue Oct 1 05:24:09 UTC 2019 x86_64 GNU/Linux
Build tool maven
Personality /home/jenkins/jenkins-slave/workspace/HBase-PreCommit-GitHub-PR_PR-762/out/precommit/personality/provided.sh
git revision master / 60d9430
Default Java 1.8.0_181
unit https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/artifact/out/patch-unit-hbase-server.txt
Test Results https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/testReport/
Max. process+thread count 4754 (vs. ulimit of 10000)
modules C: hbase-common hbase-server U: .
Console output https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/console
versions git=2.11.0 maven=2018-06-17T18:33:14Z) findbugs=3.1.11
Powered by Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

Copy link
Contributor

@saintstack saintstack left a comment

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
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
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
Contributor Author

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
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
Contributor Author

Apache9 commented Jul 27, 2020

@saintstack Let's finish this one?

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 25s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+1 💚 hbaseanti 0m 0s Patch does not have any anti-patterns.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
_ master Compile Tests _
+0 🆗 mvndep 0m 22s Maven dependency ordering for branch
+1 💚 mvninstall 3m 36s master passed
+1 💚 checkstyle 1m 35s master passed
+1 💚 spotbugs 2m 41s master passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 12s Maven dependency ordering for patch
+1 💚 mvninstall 3m 21s the patch passed
+1 💚 checkstyle 0m 22s The patch passed checkstyle in hbase-common
+1 💚 checkstyle 1m 10s hbase-server: The patch generated 0 new + 258 unchanged - 2 fixed = 258 total (was 260)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 10m 59s Patch does not cause any errors with Hadoop 3.1.2 3.2.1.
+1 💚 spotbugs 3m 0s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 26s The patch does not generate ASF License warnings.
35m 33s
Subsystem Report/Notes
Docker Client=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 Tests dupname asflicense spotbugs hadoopcheck hbaseanti checkstyle
uname Linux 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 tool maven
Personality dev-support/hbase-personality.sh
git revision master / 975cdf7
Max. process+thread count 94 (vs. ulimit of 12500)
modules C: hbase-common hbase-server U: .
Console output https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/console
versions git=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f) spotbugs=3.1.12
Powered by Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 27s Docker mode activated.
-0 ⚠️ yetus 0m 3s Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+0 🆗 mvndep 0m 24s Maven dependency ordering for branch
+1 💚 mvninstall 4m 15s master passed
+1 💚 compile 1m 31s master passed
+1 💚 shadedjars 5m 50s branch has no errors when building our shaded downstream artifacts.
-0 ⚠️ javadoc 0m 20s hbase-common in master failed.
-0 ⚠️ javadoc 0m 40s hbase-server in master failed.
_ Patch Compile Tests _
+0 🆗 mvndep 0m 16s Maven dependency ordering for patch
+1 💚 mvninstall 4m 2s the patch passed
+1 💚 compile 1m 29s the patch passed
+1 💚 javac 1m 29s the patch passed
+1 💚 shadedjars 5m 46s patch has no errors when building our shaded downstream artifacts.
-0 ⚠️ javadoc 0m 17s hbase-common in the patch failed.
-0 ⚠️ javadoc 0m 39s hbase-server in the patch failed.
_ Other Tests _
+1 💚 unit 1m 32s hbase-common in the patch passed.
+1 💚 unit 134m 35s hbase-server in the patch passed.
164m 26s
Subsystem Report/Notes
Docker Client=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 Tests javac javadoc unit shadedjars compile
uname Linux 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 tool maven
Personality dev-support/hbase-personality.sh
git revision master / 975cdf7
Default Java 2020-01-14
javadoc https://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
javadoc https://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
javadoc https://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
javadoc https://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 Results https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/testReport/
Max. process+thread count 4085 (vs. ulimit of 12500)
modules C: hbase-common hbase-server U: .
Console output https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/console
versions git=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f)
Powered by Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 24s Docker mode activated.
-0 ⚠️ yetus 0m 3s Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+0 🆗 mvndep 0m 24s Maven dependency ordering for branch
+1 💚 mvninstall 3m 35s master passed
+1 💚 compile 1m 16s master passed
+1 💚 shadedjars 5m 37s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 57s master passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 16s Maven dependency ordering for patch
+1 💚 mvninstall 3m 31s the patch passed
+1 💚 compile 1m 21s the patch passed
+1 💚 javac 1m 21s the patch passed
+1 💚 shadedjars 5m 30s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 58s the patch passed
_ Other Tests _
+1 💚 unit 1m 14s hbase-common in the patch passed.
+1 💚 unit 144m 38s hbase-server in the patch passed.
171m 51s
Subsystem Report/Notes
Docker Client=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 Tests javac javadoc unit shadedjars compile
uname Linux 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 tool maven
Personality dev-support/hbase-personality.sh
git revision master / 975cdf7
Default Java 1.8.0_232
Test Results https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/testReport/
Max. process+thread count 4262 (vs. ulimit of 12500)
modules C: hbase-common hbase-server U: .
Console output https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-762/2/console
versions git=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f)
Powered by Apache 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
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 Apache9 self-assigned this Aug 10, 2020
@Apache9 Apache9 added the bug label Aug 10, 2020
@Apache9 Apache9 merged commit 726756a into apache:master Aug 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 free to 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