[
https://issues.apache.org/jira/browse/HBASE-5162?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14215046#comment-14215046
]
Hadoop QA commented on HBASE-5162:
----------------------------------
{color:red}-1 overall{color}. Here are the results of testing the latest
attachment
http://issues.apache.org/jira/secure/attachment/12681962/hbase-5162-trunk-v8.patch
against trunk revision .
ATTACHMENT ID: 12681962
{color:green}+1 @author{color}. The patch does not contain any @author
tags.
{color:green}+1 tests included{color}. The patch appears to include 7 new
or modified tests.
{color:red}-1 javac{color}. The patch appears to cause mvn compile goal to
fail.
Compilation errors resume:
[ERROR] COMPILATION ERROR :
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestAsyncProcess.java:[211,59]
no interface expected here
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestFastFailWithoutTestUtil.java:[567,40]
anonymous class implements interface; cannot have arguments
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestFastFailWithoutTestUtil.java:[567,76]
<anonymous org.apache.hadoop.hbase.client.TestFastFailWithoutTestUtil$8> is
not abstract and does not override abstract method
callWithoutRetries(org.apache.hadoop.hbase.client.RetryingCallable<java.lang.Void>,int)
in org.apache.hadoop.hbase.client.RpcRetryingCaller
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestFastFailWithoutTestUtil.java:[571,25]
cannot find symbol
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestAsyncProcess.java:[193,51]
anonymous class implements interface; cannot have arguments
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestAsyncProcess.java:[193,63]
<anonymous org.apache.hadoop.hbase.client.TestAsyncProcess$MyAsyncProcess$3>
is not abstract and does not override abstract method
callWithRetries(org.apache.hadoop.hbase.client.RetryingCallable<org.apache.hadoop.hbase.client.MultiResponse>,int)
in org.apache.hadoop.hbase.client.RpcRetryingCaller
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestAsyncProcess.java:[217,5]
method does not override or implement a method from a supertype
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestAsyncProcess.java:[234,14]
incompatible types
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestAsyncProcess.java:[297,51]
anonymous class implements interface; cannot have arguments
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestAsyncProcess.java:[297,63]
<anonymous
org.apache.hadoop.hbase.client.TestAsyncProcess$MyAsyncProcessWithReplicas$2>
is not abstract and does not override abstract method
callWithRetries(org.apache.hadoop.hbase.client.RetryingCallable<org.apache.hadoop.hbase.client.MultiResponse>,int)
in org.apache.hadoop.hbase.client.RpcRetryingCaller
[ERROR] Failed to execute goal
org.apache.maven.plugins:maven-compiler-plugin:3.2:testCompile
(default-testCompile) on project hbase-client: Compilation failure: Compilation
failure:
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestAsyncProcess.java:[211,59]
no interface expected here
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestFastFailWithoutTestUtil.java:[567,40]
anonymous class implements interface; cannot have arguments
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestFastFailWithoutTestUtil.java:[567,76]
<anonymous org.apache.hadoop.hbase.client.TestFastFailWithoutTestUtil$8> is
not abstract and does not override abstract method
callWithoutRetries(org.apache.hadoop.hbase.client.RetryingCallable<java.lang.Void>,int)
in org.apache.hadoop.hbase.client.RpcRetryingCaller
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestFastFailWithoutTestUtil.java:[571,25]
cannot find symbol
[ERROR] symbol: method
callWithRetries(org.apache.hadoop.hbase.client.RetryingCallable<java.lang.Void>,int)
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestAsyncProcess.java:[193,51]
anonymous class implements interface; cannot have arguments
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestAsyncProcess.java:[193,63]
<anonymous org.apache.hadoop.hbase.client.TestAsyncProcess$MyAsyncProcess$3>
is not abstract and does not override abstract method
callWithRetries(org.apache.hadoop.hbase.client.RetryingCallable<org.apache.hadoop.hbase.client.MultiResponse>,int)
in org.apache.hadoop.hbase.client.RpcRetryingCaller
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestAsyncProcess.java:[217,5]
method does not override or implement a method from a supertype
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestAsyncProcess.java:[234,14]
incompatible types
[ERROR] required:
org.apache.hadoop.hbase.client.RpcRetryingCaller<org.apache.hadoop.hbase.client.MultiResponse>
[ERROR] found:
org.apache.hadoop.hbase.client.TestAsyncProcess.CallerWithFailure
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestAsyncProcess.java:[297,51]
anonymous class implements interface; cannot have arguments
[ERROR]
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestAsyncProcess.java:[297,63]
<anonymous
org.apache.hadoop.hbase.client.TestAsyncProcess$MyAsyncProcessWithReplicas$2>
is not abstract and does not override abstract method
callWithRetries(org.apache.hadoop.hbase.client.RetryingCallable<org.apache.hadoop.hbase.client.MultiResponse>,int)
in org.apache.hadoop.hbase.client.RpcRetryingCaller
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e
switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please
read the following articles:
[ERROR] [Help 1]
http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR] mvn <goals> -rf :hbase-client
Console output:
https://builds.apache.org/job/PreCommit-HBASE-Build/11714//console
This message is automatically generated.
> Basic client pushback mechanism
> -------------------------------
>
> Key: HBASE-5162
> URL: https://issues.apache.org/jira/browse/HBASE-5162
> Project: HBase
> Issue Type: New Feature
> Affects Versions: 0.92.0
> Reporter: Jean-Daniel Cryans
> Assignee: Jesse Yates
> Fix For: 1.0.0
>
> Attachments: hbase-5162-trunk-v0.patch, hbase-5162-trunk-v1.patch,
> hbase-5162-trunk-v2.patch, hbase-5162-trunk-v3.patch,
> hbase-5162-trunk-v4.patch, hbase-5162-trunk-v5.patch,
> hbase-5162-trunk-v6.patch, hbase-5162-trunk-v7.patch,
> hbase-5162-trunk-v8.patch, java_HBASE-5162.patch
>
>
> The current blocking we do when we are close to some limits (memstores over
> the multiplier factor, too many store files, global memstore memory) is bad,
> too coarse and confusing. After hitting HBASE-5161, it really becomes obvious
> that we need something better.
> I did a little brainstorm with Stack, we came up quickly with two solutions:
> - Send some exception to the client, like OverloadedException, that's thrown
> when some situation happens like getting past the low memory barrier. It
> would be thrown when the client gets a handler and does some check while
> putting or deleting. The client would treat this a retryable exception but
> ideally wouldn't check .META. for a new location. It could be fancy and have
> multiple levels of pushback, like send the exception to 25% of the clients,
> and then go up if the situation persists. Should be "easy" to implement but
> we'll be using a lot more IO to send the payload over and over again (but at
> least it wouldn't sit in the RS's memory).
> - Send a message alongside a successful put or delete to tell the client to
> slow down a little, this way we don't have to do back and forth with the
> payload between the client and the server. It's a cleaner (I think) but more
> involved solution.
> In every case the RS should do very obvious things to notify the operators of
> this situation, through logs, web UI, metrics, etc.
> Other ideas?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)