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-22527 [hbck2] Add a master web ui to show the problematic regions #373

Closed
wants to merge 1 commit into from

Conversation

infraio
Copy link
Contributor

@infraio infraio commented Jul 11, 2019

No description provided.

Copy link
Contributor

@Apache9 Apache9 left a comment

Choose a reason for hiding this comment

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

Add a UT?

@@ -23,9 +23,12 @@
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedList;
Copy link
Contributor

Choose a reason for hiding this comment

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

What's this...

@@ -158,6 +161,8 @@
private final RegionStates regionStates = new RegionStates();
private final RegionStateStore regionStateStore;

private final ConcurrentMap<ServerName, Set<byte[]>> rsReports = new ConcurrentHashMap<>();
Copy link
Contributor

Choose a reason for hiding this comment

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

It looks like all of our access is synchronized, why are we using CHM?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Changed to HashMap in new patch.

@@ -2028,4 +2036,41 @@ private void addToPendingAssignment(final HashMap<RegionInfo, RegionStateNode> r
MasterServices getMaster() {
return master;
}

public Map<byte[], Pair<ServerName, Set<ServerName>>> getProblematicRegions() {
Copy link
Contributor

Choose a reason for hiding this comment

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

how do we get from this method to the master UI?

we need a way to get the same information via a cli, either hbck1 or shell.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Added the UI in new patch.

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 thought hbck1 already have the ability to find these problematic regions?

@@ -2028,4 +2036,41 @@ private void addToPendingAssignment(final HashMap<RegionInfo, RegionStateNode> r
MasterServices getMaster() {
return master;
}

public Map<byte[], Pair<ServerName, Set<ServerName>>> getProblematicRegions() {
Copy link
Contributor

Choose a reason for hiding this comment

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

this method needs a javadoc description of what we're returning

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Added the javadoc in new patch.

@@ -2028,4 +2036,41 @@ private void addToPendingAssignment(final HashMap<RegionInfo, RegionStateNode> r
MasterServices getMaster() {
return master;
}

public Map<byte[], Pair<ServerName, Set<ServerName>>> getProblematicRegions() {
ConcurrentMap<byte[], Set<ServerName>> reportedOnlineRegions = new ConcurrentHashMap<>();
Copy link
Contributor

Choose a reason for hiding this comment

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

why is this a concurrent map?

@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
0 reexec 133 Docker mode activated.
_ Prechecks _
+1 hbaseanti 0 Patch does not have any anti-patterns.
+1 @author 0 The patch does not contain any @author tags.
-0 test4tests 0 The 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 _
+1 mvninstall 291 master passed
+1 compile 62 master passed
+1 checkstyle 82 master passed
+1 shadedjars 285 branch has no errors when building our shaded downstream artifacts.
+1 findbugs 268 master passed
+1 javadoc 39 master passed
_ Patch Compile Tests _
+1 mvninstall 276 the patch passed
+1 compile 58 the patch passed
+1 javac 58 the patch passed
-1 checkstyle 78 hbase-server: The patch generated 1 new + 9 unchanged - 0 fixed = 10 total (was 9)
+1 whitespace 0 The patch has no whitespace issues.
+1 shadedjars 295 patch has no errors when building our shaded downstream artifacts.
+1 hadoopcheck 855 Patch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.
+1 findbugs 252 the patch passed
+1 javadoc 40 the patch passed
_ Other Tests _
-1 unit 1748 hbase-server in the patch failed.
+1 asflicense 13 The patch does not generate ASF License warnings.
5114
Reason Tests
Failed junit tests hadoop.hbase.regionserver.TestMultiVersionConcurrencyControlBasic
hadoop.hbase.master.balancer.TestServerAndLoad
hadoop.hbase.regionserver.TestBlocksScanned
Subsystem Report/Notes
Docker Client=18.09.7 Server=18.09.7 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/1/artifact/out/Dockerfile
GITHUB PR #373
Optional Tests dupname asflicense javac javadoc unit findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
uname Linux 3e020f4aae34 4.15.0-52-generic #56-Ubuntu SMP Tue Jun 4 22:49:08 UTC 2019 x86_64 GNU/Linux
Build tool maven
Personality /testptch/patchprocess/precommit/personality/provided.sh
git revision master / 438bf32
maven version: Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-17T18:33:14Z)
Default Java 1.8.0_181
findbugs v3.1.11
checkstyle https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/1/artifact/out/diff-checkstyle-hbase-server.txt
unit https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/1/artifact/out/patch-unit-hbase-server.txt
Test Results https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/1/testReport/
Max. process+thread count 674 (vs. ulimit of 10000)
modules C: hbase-server U: hbase-server
Console output https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/1/console
Powered by Apache Yetus 0.9.0 http://yetus.apache.org

This message was automatically generated.

@infraio infraio force-pushed the hbase-checker branch 2 times, most recently from 7d237eb to 4b5243f Compare July 15, 2019 11:15
@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
0 reexec 159 Docker mode activated.
_ Prechecks _
+1 hbaseanti 0 Patch does not have any anti-patterns.
+1 @author 0 The patch does not contain any @author tags.
+1 test4tests 0 The patch appears to include 1 new or modified test files.
_ master Compile Tests _
+1 mvninstall 253 master passed
+1 compile 51 master passed
+1 checkstyle 67 master passed
+1 shadedjars 263 branch has no errors when building our shaded downstream artifacts.
+1 findbugs 198 master passed
+1 javadoc 33 master passed
_ Patch Compile Tests _
+1 mvninstall 234 the patch passed
+1 compile 51 the patch passed
+1 javac 51 the patch passed
-1 checkstyle 67 hbase-server: The patch generated 1 new + 9 unchanged - 0 fixed = 10 total (was 9)
+1 whitespace 0 The patch has no whitespace issues.
+1 shadedjars 263 patch has no errors when building our shaded downstream artifacts.
+1 hadoopcheck 716 Patch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.
+1 findbugs 210 the patch passed
+1 javadoc 32 the patch passed
_ Other Tests _
-1 unit 13913 hbase-server in the patch failed.
+1 asflicense 24 The patch does not generate ASF License warnings.
16843
Subsystem Report/Notes
Docker Client=18.09.7 Server=18.09.7 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/2/artifact/out/Dockerfile
GITHUB PR #373
Optional Tests dupname asflicense javac javadoc unit findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
uname Linux ecbdac0f8b0f 4.4.0-138-generic #164-Ubuntu SMP Tue Oct 2 17:16:02 UTC 2018 x86_64 GNU/Linux
Build tool maven
Personality /testptch/patchprocess/precommit/personality/provided.sh
git revision master / 74731c2
maven version: Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-17T18:33:14Z)
Default Java 1.8.0_181
findbugs v3.1.11
checkstyle https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/2/artifact/out/diff-checkstyle-hbase-server.txt
unit https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/2/artifact/out/patch-unit-hbase-server.txt
Test Results https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/2/testReport/
Max. process+thread count 4915 (vs. ulimit of 10000)
modules C: hbase-server U: hbase-server
Console output https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/2/console
Powered by Apache Yetus 0.9.0 http://yetus.apache.org

This message was automatically generated.

@infraio infraio force-pushed the hbase-checker branch 2 times, most recently from bc945a1 to 0b6fc5d Compare July 16, 2019 01:42
@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
0 reexec 65 Docker mode activated.
_ Prechecks _
+1 hbaseanti 0 Patch does not have any anti-patterns.
+1 @author 0 The patch does not contain any @author tags.
+1 test4tests 0 The patch appears to include 1 new or modified test files.
_ master Compile Tests _
+1 mvninstall 274 master passed
+1 compile 55 master passed
+1 checkstyle 71 master passed
+1 shadedjars 287 branch has no errors when building our shaded downstream artifacts.
+1 findbugs 209 master passed
+1 javadoc 33 master passed
_ Patch Compile Tests _
+1 mvninstall 240 the patch passed
+1 compile 53 the patch passed
+1 javac 53 the patch passed
-1 checkstyle 69 hbase-server: The patch generated 1 new + 9 unchanged - 0 fixed = 10 total (was 9)
+1 whitespace 0 The patch has no whitespace issues.
+1 shadedjars 276 patch has no errors when building our shaded downstream artifacts.
+1 hadoopcheck 834 Patch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.
+1 findbugs 206 the patch passed
+1 javadoc 34 the patch passed
_ Other Tests _
-1 unit 15667 hbase-server in the patch failed.
+1 asflicense 39 The patch does not generate ASF License warnings.
18716
Reason Tests
Failed junit tests hadoop.hbase.client.TestAsyncRegionAdminApi2
Subsystem Report/Notes
Docker Client=18.09.7 Server=18.09.7 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/3/artifact/out/Dockerfile
GITHUB PR #373
Optional Tests dupname asflicense javac javadoc unit findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
uname Linux 79b61896c3b9 4.4.0-139-generic #165-Ubuntu SMP Wed Oct 24 10:58:50 UTC 2018 x86_64 GNU/Linux
Build tool maven
Personality /testptch/patchprocess/precommit/personality/provided.sh
git revision master / cc38de1
maven version: Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-17T18:33:14Z)
Default Java 1.8.0_181
findbugs v3.1.11
checkstyle https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/3/artifact/out/diff-checkstyle-hbase-server.txt
unit https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/3/artifact/out/patch-unit-hbase-server.txt
Test Results https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/3/testReport/
Max. process+thread count 5179 (vs. ulimit of 10000)
modules C: hbase-server U: hbase-server
Console output https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/3/console
Powered by Apache Yetus 0.9.0 http://yetus.apache.org

This message was automatically generated.

@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
0 reexec 28 Docker mode activated.
_ Prechecks _
+1 hbaseanti 0 Patch does not have any anti-patterns.
+1 @author 0 The patch does not contain any @author tags.
+1 test4tests 0 The patch appears to include 1 new or modified test files.
_ master Compile Tests _
+1 mvninstall 234 master passed
+1 compile 51 master passed
+1 checkstyle 65 master passed
+1 shadedjars 263 branch has no errors when building our shaded downstream artifacts.
+1 findbugs 207 master passed
+1 javadoc 33 master passed
_ Patch Compile Tests _
+1 mvninstall 232 the patch passed
+1 compile 53 the patch passed
+1 javac 53 the patch passed
-1 checkstyle 67 hbase-server: The patch generated 1 new + 9 unchanged - 0 fixed = 10 total (was 9)
+1 whitespace 0 The patch has no whitespace issues.
+1 shadedjars 268 patch has no errors when building our shaded downstream artifacts.
+1 hadoopcheck 736 Patch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.
+1 findbugs 214 the patch passed
+1 javadoc 32 the patch passed
_ Other Tests _
+1 unit 7802 hbase-server in the patch passed.
+1 asflicense 22 The patch does not generate ASF License warnings.
10618
Subsystem Report/Notes
Docker Client=18.09.7 Server=18.09.7 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/4/artifact/out/Dockerfile
GITHUB PR #373
Optional Tests dupname asflicense javac javadoc unit findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
uname Linux 8a3d2e58432a 4.4.0-139-generic #165-Ubuntu SMP Wed Oct 24 10:58:50 UTC 2018 x86_64 GNU/Linux
Build tool maven
Personality /testptch/patchprocess/precommit/personality/provided.sh
git revision master / 72e58a8
maven version: Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-17T18:33:14Z)
Default Java 1.8.0_181
findbugs v3.1.11
checkstyle https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/4/artifact/out/diff-checkstyle-hbase-server.txt
Test Results https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/4/testReport/
Max. process+thread count 4548 (vs. ulimit of 10000)
modules C: hbase-server U: hbase-server
Console output https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-373/4/console
Powered by Apache Yetus 0.9.0 http://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.

Really great. Just a note on something to add on commit.

int numOfPages = (int) Math.ceil(totalSize * 1.0 / sizePerPage);
</%java>
<section>
<h2><a name="rit">Problematic Regions</a></h2>
Copy link
Contributor

Choose a reason for hiding this comment

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

On commit, add a sentence that says what a problematic region is. It seems like its one that has a meta entry that does not agree w/ where it is actually deployed?

Copy link
Contributor

Choose a reason for hiding this comment

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

Or, you say below what it is... * case 1. Master thought this region opened, but no regionserver reported it.

  • case 2. Master thought this region opened on Server1, but regionserver reported Server2
  • case 3. More than one regionservers reported opened this region

Can this be added in the UI maybe in small text?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Already committed it. Will add addendum for this.

@infraio infraio closed this Jul 18, 2019
@infraio infraio deleted the hbase-checker branch July 18, 2019 05:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
5 participants