Skip to content

HBASE-23213 : Reopen regions with very high Store Ref Counts(backport… - #761

Merged
apurtell merged 1 commit into
apache:branch-1from
virajjasani:HBASE-23213-branch-1
Oct 29, 2019
Merged

HBASE-23213 : Reopen regions with very high Store Ref Counts(backport…#761
apurtell merged 1 commit into
apache:branch-1from
virajjasani:HBASE-23213-branch-1

Conversation

@virajjasani

Copy link
Copy Markdown
Contributor

@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
💙reexec1m 19sDocker mode activated.
_ Prechecks _
💚dupname0m 0sNo case conflicting files found.
💙prototool0m 0sprototool was not available.
💚hbaseanti0m 0sPatch does not have any anti-patterns.
💚@author0m 0sThe patch does not contain any @author tags.
💚test4tests0m 0sThe patch appears to include 2 new or modified test files.
_ branch-1 Compile Tests _
💙mvndep1m 23sMaven dependency ordering for branch
💚mvninstall7m 29sbranch-1 passed
💚compile1m 39sbranch-1 passed with JDK v1.8.0_232
💚compile1m 46sbranch-1 passed with JDK v1.7.0_242
💚checkstyle10m 59sbranch-1 passed
💙refguide3m 24sbranch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect.
💚shadedjars2m 50sbranch has no errors when building our shaded downstream artifacts.
💚javadoc3m 45sbranch-1 passed with JDK v1.8.0_232
💚javadoc5m 48sbranch-1 passed with JDK v1.7.0_242
💙spotbugs2m 28sUsed deprecated FindBugs config; considering switching to SpotBugs.
💚findbugs18m 2sbranch-1 passed
_ Patch Compile Tests _
💙mvndep0m 17sMaven dependency ordering for patch
💚mvninstall1m 58sthe patch passed
💚compile1m 42sthe patch passed with JDK v1.8.0_232
💚cc1m 42sthe patch passed
💚javac1m 42sthe patch passed
💚compile1m 46sthe patch passed with JDK v1.7.0_242
💚cc1m 46sthe patch passed
💚javac1m 46sthe patch passed
💚checkstyle10m 54sthe patch passed
💚whitespace0m 0sThe patch has no whitespace issues.
💔xml0m 0sThe patch has 1 ill-formed XML file(s).
💙refguide3m 0spatch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect.
💚shadedjars2m 44spatch has no errors when building our shaded downstream artifacts.
💚hadoopcheck4m 59sPatch does not cause any errors with Hadoop 2.8.5 2.9.2.
💚hbaseprotoc4m 24sthe patch passed
💚javadoc3m 52sthe patch passed with JDK v1.8.0_232
💚javadoc5m 55sthe patch passed with JDK v1.7.0_242
💔findbugs2m 55shbase-server generated 1 new + 0 unchanged - 0 fixed = 1 total (was 0)
💔findbugs10m 29sroot generated 1 new + 0 unchanged - 0 fixed = 1 total (was 0)
_ Other Tests _
💔unit166m 43sroot in the patch failed.
💚asflicense2m 50sThe patch does not generate ASF License warnings.
295m 4s
ReasonTests
XMLParsing Error(s):
hbase-common/src/main/resources/hbase-default.xml
FindBugsmodule:hbase-server
org.apache.hadoop.hbase.master.RegionsRecoveryChore.chore() makes inefficient use of keySet iterator instead of entrySet iterator At RegionsRecoveryChore.java:keySet iterator instead of entrySet iterator At RegionsRecoveryChore.java:[line 104]
FindBugsmodule:root
org.apache.hadoop.hbase.master.RegionsRecoveryChore.chore() makes inefficient use of keySet iterator instead of entrySet iterator At RegionsRecoveryChore.java:keySet iterator instead of entrySet iterator At RegionsRecoveryChore.java:[line 104]
Failed junit testshadoop.hbase.client.TestAdmin1
hadoop.hbase.client.replication.TestReplicationAdminWithTwoDifferentZKClusters
SubsystemReport/Notes
DockerClient=19.03.4 Server=19.03.4 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/1/artifact/out/Dockerfile
GITHUB PR#761
Optional Testsdupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile refguide xml cc hbaseprotoc prototool
unameLinux 8a4938041612 4.15.0-65-generic #74-Ubuntu SMP Tue Sep 17 17:06:04 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personality/home/jenkins/jenkins-slave/workspace/HBase-PreCommit-GitHub-PR_PR-761/out/precommit/personality/provided.sh
git revisionbranch-1 / db2ce23
Default Java1.7.0_242
Multi-JDK versions/usr/lib/jvm/zulu-8-amd64:1.8.0_232 /usr/lib/jvm/zulu-7-amd64:1.7.0_242
refguidehttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/1/artifact/out/branch-site/book.html
xmlhttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/1/artifact/out/xml.txt
refguidehttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/1/artifact/out/patch-site/book.html
findbugshttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/1/artifact/out/new-findbugs-hbase-server.html
findbugshttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/1/artifact/out/new-findbugs-root.html
unithttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/1/artifact/out/patch-unit-root.txt
Test Resultshttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/1/testReport/
Max. process+thread count4455 (vs. ulimit of 10000)
modulesC: hbase-protocol hbase-common hbase-client hbase-hadoop-compat hbase-hadoop2-compat hbase-server . U: .
Console outputhttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/1/console
versionsgit=1.9.1 maven=3.0.5 findbugs=3.0.1
Powered byApache Yetus 0.11.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
💙reexec1m 24sDocker mode activated.
_ Prechecks _
💚dupname0m 1sNo case conflicting files found.
💙prototool0m 0sprototool was not available.
💚hbaseanti0m 0sPatch does not have any anti-patterns.
💚@author0m 0sThe patch does not contain any @author tags.
💚test4tests0m 0sThe patch appears to include 2 new or modified test files.
_ branch-1 Compile Tests _
💙mvndep1m 21sMaven dependency ordering for branch
💚mvninstall7m 39sbranch-1 passed
💚compile1m 46sbranch-1 passed with JDK v1.8.0_232
💚compile1m 54sbranch-1 passed with JDK v1.7.0_242
💚checkstyle11m 40sbranch-1 passed
💙refguide3m 37sbranch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect.
💚shadedjars2m 54sbranch has no errors when building our shaded downstream artifacts.
💚javadoc3m 56sbranch-1 passed with JDK v1.8.0_232
💚javadoc6m 13sbranch-1 passed with JDK v1.7.0_242
💙spotbugs2m 40sUsed deprecated FindBugs config; considering switching to SpotBugs.
💚findbugs19m 24sbranch-1 passed
_ Patch Compile Tests _
💙mvndep0m 17sMaven dependency ordering for patch
💚mvninstall2m 5sthe patch passed
💚compile1m 46sthe patch passed with JDK v1.8.0_232
💚cc1m 46sthe patch passed
💚javac1m 46sthe patch passed
💚compile1m 50sthe patch passed with JDK v1.7.0_242
💚cc1m 50sthe patch passed
💚javac1m 50sthe patch passed
💚checkstyle12m 36sthe patch passed
💚whitespace0m 0sThe patch has no whitespace issues.
💔xml0m 0sThe patch has 1 ill-formed XML file(s).
💙refguide3m 53spatch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect.
💚shadedjars3m 21spatch has no errors when building our shaded downstream artifacts.
💚hadoopcheck5m 57sPatch does not cause any errors with Hadoop 2.8.5 2.9.2.
💚hbaseprotoc4m 58sthe patch passed
💚javadoc4m 14sthe patch passed with JDK v1.8.0_232
💚javadoc6m 54sthe patch passed with JDK v1.7.0_242
💚findbugs23m 11sthe patch passed
_ Other Tests _
💔unit224m 34sroot in the patch failed.
💚asflicense3m 0sThe patch does not generate ASF License warnings.
366m 55s
ReasonTests
XMLParsing Error(s):
hbase-common/src/main/resources/hbase-default.xml
Failed junit testshadoop.hbase.master.normalizer.TestSimpleRegionNormalizerOnCluster
hadoop.hbase.client.TestAdmin1
hadoop.hbase.client.TestReplicaWithCluster
hadoop.hbase.client.replication.TestReplicationAdminWithTwoDifferentZKClusters
hadoop.hbase.master.TestMasterBalanceThrottling
SubsystemReport/Notes
DockerClient=19.03.4 Server=19.03.4 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/2/artifact/out/Dockerfile
GITHUB PR#761
Optional Testsdupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile refguide xml cc hbaseprotoc prototool
unameLinux ab9410c5fcf9 4.15.0-65-generic #74-Ubuntu SMP Tue Sep 17 17:06:04 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personality/home/jenkins/jenkins-slave/workspace/HBase-PreCommit-GitHub-PR_PR-761/out/precommit/personality/provided.sh
git revisionbranch-1 / db2ce23
Default Java1.7.0_242
Multi-JDK versions/usr/lib/jvm/zulu-8-amd64:1.8.0_232 /usr/lib/jvm/zulu-7-amd64:1.7.0_242
refguidehttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/2/artifact/out/branch-site/book.html
xmlhttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/2/artifact/out/xml.txt
refguidehttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/2/artifact/out/patch-site/book.html
unithttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/2/artifact/out/patch-unit-root.txt
Test Resultshttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/2/testReport/
Max. process+thread count4388 (vs. ulimit of 10000)
modulesC: hbase-protocol hbase-common hbase-client hbase-hadoop-compat hbase-hadoop2-compat hbase-server . U: .
Console outputhttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/2/console
versionsgit=1.9.1 maven=3.0.5 findbugs=3.0.1
Powered byApache Yetus 0.11.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
💙reexec2m 15sDocker mode activated.
_ Prechecks _
💚dupname0m 0sNo case conflicting files found.
💙prototool0m 1sprototool was not available.
💚hbaseanti0m 0sPatch does not have any anti-patterns.
💚@author0m 0sThe patch does not contain any @author tags.
💚test4tests0m 0sThe patch appears to include 2 new or modified test files.
_ branch-1 Compile Tests _
💙mvndep1m 24sMaven dependency ordering for branch
💚mvninstall7m 56sbranch-1 passed
💚compile2m 6sbranch-1 passed with JDK v1.8.0_232
💚compile2m 22sbranch-1 passed with JDK v1.7.0_242
💚checkstyle12m 28sbranch-1 passed
💙refguide3m 29sbranch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect.
💚shadedjars3m 9sbranch has no errors when building our shaded downstream artifacts.
💚javadoc3m 58sbranch-1 passed with JDK v1.8.0_232
💚javadoc6m 12sbranch-1 passed with JDK v1.7.0_242
💙spotbugs2m 41sUsed deprecated FindBugs config; considering switching to SpotBugs.
💚findbugs19m 22sbranch-1 passed
_ Patch Compile Tests _
💙mvndep0m 16sMaven dependency ordering for patch
💚mvninstall2m 7sthe patch passed
💚compile1m 44sthe patch passed with JDK v1.8.0_232
💚cc1m 44sthe patch passed
💚javac1m 44sthe patch passed
💚compile1m 52sthe patch passed with JDK v1.7.0_242
💚cc1m 52sthe patch passed
💚javac1m 52sthe patch passed
💚checkstyle11m 13sthe patch passed
💚whitespace0m 0sThe patch has no whitespace issues.
💔xml0m 1sThe patch has 1 ill-formed XML file(s).
💙refguide3m 2spatch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect.
💚shadedjars2m 58spatch has no errors when building our shaded downstream artifacts.
💚hadoopcheck5m 20sPatch does not cause any errors with Hadoop 2.8.5 2.9.2.
💚hbaseprotoc4m 27sthe patch passed
💚javadoc3m 51sthe patch passed with JDK v1.8.0_232
💚javadoc6m 3sthe patch passed with JDK v1.7.0_242
💚findbugs20m 38sthe patch passed
_ Other Tests _
💔unit175m 20sroot in the patch failed.
💚asflicense2m 49sThe patch does not generate ASF License warnings.
312m 20s
ReasonTests
XMLParsing Error(s):
hbase-common/src/main/resources/hbase-default.xml
Failed junit testshadoop.hbase.client.TestAdmin1
SubsystemReport/Notes
DockerClient=19.03.4 Server=19.03.4 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/3/artifact/out/Dockerfile
GITHUB PR#761
Optional Testsdupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile refguide xml cc hbaseprotoc prototool
unameLinux 73bf6d6cd2e1 4.15.0-65-generic #74-Ubuntu SMP Tue Sep 17 17:06:04 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personality/home/jenkins/jenkins-slave/workspace/HBase-PreCommit-GitHub-PR_PR-761/out/precommit/personality/provided.sh
git revisionbranch-1 / db2ce23
Default Java1.7.0_242
Multi-JDK versions/usr/lib/jvm/zulu-8-amd64:1.8.0_232 /usr/lib/jvm/zulu-7-amd64:1.7.0_242
refguidehttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/3/artifact/out/branch-site/book.html
xmlhttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/3/artifact/out/xml.txt
refguidehttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/3/artifact/out/patch-site/book.html
unithttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/3/artifact/out/patch-unit-root.txt
Test Resultshttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/3/testReport/
Max. process+thread count4423 (vs. ulimit of 10000)
modulesC: hbase-protocol hbase-common hbase-client hbase-hadoop-compat hbase-hadoop2-compat hbase-server . U: .
Console outputhttps://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-761/3/console
versionsgit=1.9.1 maven=3.0.5 findbugs=3.0.1
Powered byApache Yetus 0.11.0 https://yetus.apache.org

This message was automatically generated.

@virajjasani

Copy link
Copy Markdown
ContributorAuthor

TestAdmin1 is passing locally

[INFO] -------------------------------------------------------
[INFO] T E S T S
[INFO] -------------------------------------------------------
[INFO] Running org.apache.hadoop.hbase.client.TestAdmin1
[INFO] Tests run: 29, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 152.323 s - in org.apache.hadoop.hbase.client.TestAdmin1
[INFO] [INFO] Results:
[INFO] [INFO] Tests run: 29, Failures: 0, Errors: 0, Skipped: 0
[INFO] 

@virajjasani

Copy link
Copy Markdown
ContributorAuthor

This is branch-1 backport PR.
Please review @anoopsjohn@apurtell

/**
* @return map of the names of region servers on the live list with associated ServerLoad
*/
public Map<ServerName, ServerLoad> getLiveServersLoad() {

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.

Additive change to Public interface is fine. We are already also changing RegionLoad.

* The max number of references active on single store file among all store files
* that belong to given region
*/
optional int32 max_store_file_ref_count = 22 [default = 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.

Checked branch-2 and master proto def, this is consistent with them, good

@apurtell

Copy link
Copy Markdown
Contributor

+1 from me, merging soon. Shout if you want to stop it.

@xcangCRM

xcangCRM commented Oct 28, 2019

Copy link
Copy Markdown
Contributor

I am not very comfortable having this test failing here:
org.apache.hadoop.hbase.client.TestAdmin1.testMergeRegions
Error Details
expected:<1> but was:<2>
Stack Trace
java.lang.AssertionError: expected:<1> but was:<2>
at org.apache.hadoop.hbase.client.TestAdmin1.testMergeRegions(TestAdmin1.java:1489)
Standard Output
Standard Error

This test is not part of our branch-1 flaky tests list:https://builds.apache.org/view/H-L/view/HBase/job/HBase-Find-Flaky-Tests/job/branch-1/lastSuccessfulBuild/artifact/dashboard.html#job_2

And having value 2 here meaning the region merge failed.

@apurtell

Copy link
Copy Markdown
Contributor

Ok @xcangCRM , holding off

@apurtell

Copy link
Copy Markdown
Contributor

So the question is this test unstable before this change or caused by this change. @virajjasani if you don't have time to run TestAdmin1 at head of branch-1 in a loop 20 times or so to check that all runs are green before your change (or not), I'll pick it up tomorrow.

@virajjasani

virajjasani commented Oct 29, 2019

Copy link
Copy Markdown
ContributorAuthor

@apurtell@xcangCRM
Just tried a quick test

With and without this patch applied, the results remain same:

  1. ran TestAdmin1.testMergeRegions 5 times in loop: successful
  2. ran TestAdmin1.testMergeRegions 10 times in loop: successful
  3. ran TestAdmin1.testMergeRegions 25 times in loop: fails

Will try more runs by EOD and check if any discrepancy is found between branch-1 and this patch.

@virajjasani

Copy link
Copy Markdown
ContributorAuthor

ok so now I just ran TestAdmin1.testMergeRegions 50 times in loop with this patch and it went smooth without any failure.

@apurtell

Copy link
Copy Markdown
Contributor

I'll do the same. If we can't correlate the failure, I will proceed.

@xcangCRM

Copy link
Copy Markdown
Contributor

Sounds good to me! thank you. @virajjasani@apurtell

@apurtell

apurtell commented Oct 29, 2019

Copy link
Copy Markdown
Contributor

On my new dev laptop testing TestAdmin1 is problematic:

[INFO] Running org.apache.hadoop.hbase.client.TestAdmin1
[ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 4.365 s <<< FAILURE! - in org.apache.hadoop.hbase.client.TestAdmin1
[ERROR] org.apache.hadoop.hbase.client.TestAdmin1 Time elapsed: 4.362 s <<< ERROR!
java.io.IOException: Shutting down
at org.apache.hadoop.hbase.client.TestAdmin1.setUpBeforeClass(TestAdmin1.java:101)
Caused by: java.lang.RuntimeException: Failed construction of Master: class org.apache.hadoop.hbase.master.HMasterCan't assign requested address
at org.apache.hadoop.hbase.client.TestAdmin1.setUpBeforeClass(TestAdmin1.java:101)
Caused by: java.io.IOException: Problem binding to /10.29.170.32:0 : Can't assign requested address. To switch ports use the 'hbase.master.port' configuration property.
at org.apache.hadoop.hbase.client.TestAdmin1.setUpBeforeClass(TestAdmin1.java:101)
Caused by: java.net.BindException: Can't assign requested address
at org.apache.hadoop.hbase.client.TestAdmin1.setUpBeforeClass(TestAdmin1.java:101)

This happens before applying the patch here. I'm going to bisect to find where this was introduced.

Edit: This looks like an old problem with JVMs doing weird things with binding to localhost when on VPN on MacOS. The Azul JVM may be at issue. I will test on a linux host to work around this.

@apurtell

Copy link
Copy Markdown
Contributor

25 iterations with this patch look good. @xcangCRM if you continue to see instability with TestAdmin1 let's open a JIRA, and please post logs from failed runs there.

@apurtell
apurtell merged commit 5e414f2 into apache:branch-1Oct 29, 2019
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.

4 participants

@virajjasani@Apache-HBase@apurtell@xcangCRM