[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-09-04 Thread Vladimir Rodionov (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14121569#comment-14121569
 ] 

Vladimir Rodionov commented on HBASE-9941:
--

The additional observed overhead is explained here:
https://bugs.openjdk.java.net/browse/JDK-6642881?page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel

Class.getClassLoader() is expensive op because of JNI nature. 
CoprocessorHost.Environment
{code}
@Override
public ClassLoader getClassLoader() {
  return impl.getClass().getClassLoader();
}
{code}

does not do any attempts to cache class loader instance. I think it is safe to 
cache it. Correct me if I am wrong.

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0, 0.99.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch, 9941.patch, 
> 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-04 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13862288#comment-13862288
 ] 

Hudson commented on HBASE-9941:
---

SUCCESS: Integrated in HBase-TRUNK-on-Hadoop-1.1 #41 (See 
[https://builds.apache.org/job/HBase-TRUNK-on-Hadoop-1.1/41/])
HBASE-9941. The context ClassLoader isn't set while calling into a coprocessor 
(apurtell: rev 1555328)
* 
/hbase/trunk/hbase-client/src/main/java/org/apache/hadoop/hbase/CoprocessorEnvironment.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/CoprocessorHost.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterCoprocessorHost.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionServerCoprocessorHost.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/WALCoprocessorHost.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/security/token/TestTokenAuthentication.java


> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0, 0.99.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch, 9941.patch, 
> 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-04 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13862266#comment-13862266
 ] 

Hudson commented on HBASE-9941:
---

SUCCESS: Integrated in HBase-0.98-on-Hadoop-1.1 #53 (See 
[https://builds.apache.org/job/HBase-0.98-on-Hadoop-1.1/53/])
HBASE-9941. The context ClassLoader isn't set while calling into a coprocessor 
(apurtell: rev 1555329)
* 
/hbase/branches/0.98/hbase-client/src/main/java/org/apache/hadoop/hbase/CoprocessorEnvironment.java
* 
/hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/CoprocessorHost.java
* 
/hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterCoprocessorHost.java
* 
/hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.java
* 
/hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionServerCoprocessorHost.java
* 
/hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/WALCoprocessorHost.java
* 
/hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/security/token/TestTokenAuthentication.java


> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0, 0.99.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch, 9941.patch, 
> 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-04 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13862258#comment-13862258
 ] 

Hudson commented on HBASE-9941:
---

SUCCESS: Integrated in HBase-0.98 #57 (See 
[https://builds.apache.org/job/HBase-0.98/57/])
HBASE-9941. The context ClassLoader isn't set while calling into a coprocessor 
(apurtell: rev 1555329)
* 
/hbase/branches/0.98/hbase-client/src/main/java/org/apache/hadoop/hbase/CoprocessorEnvironment.java
* 
/hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/CoprocessorHost.java
* 
/hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterCoprocessorHost.java
* 
/hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.java
* 
/hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionServerCoprocessorHost.java
* 
/hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/WALCoprocessorHost.java
* 
/hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/security/token/TestTokenAuthentication.java


> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0, 0.99.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch, 9941.patch, 
> 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-04 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13862256#comment-13862256
 ] 

Hudson commented on HBASE-9941:
---

FAILURE: Integrated in HBase-TRUNK #4788 (See 
[https://builds.apache.org/job/HBase-TRUNK/4788/])
HBASE-9941. The context ClassLoader isn't set while calling into a coprocessor 
(apurtell: rev 1555328)
* 
/hbase/trunk/hbase-client/src/main/java/org/apache/hadoop/hbase/CoprocessorEnvironment.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/CoprocessorHost.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterCoprocessorHost.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionServerCoprocessorHost.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/WALCoprocessorHost.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/security/token/TestTokenAuthentication.java


> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0, 0.99.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch, 9941.patch, 
> 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13862232#comment-13862232
 ] 

Andrew Purtell commented on HBASE-9941:
---

Apparent 'release audit' warnings are these issues unrelated to this patch, 
which only modifies existing files with license headers:
{noformat}
[WARNING] The POM for org.eclipse.m2e:lifecycle-mapping:jar:1.0.0 is missing, 
no dependency information available
[WARNING] Failed to retrieve plugin descriptor for 
org.eclipse.m2e:lifecycle-mapping:1.0.0: Plugin 
org.eclipse.m2e:lifecycle-mapping:1.0.0 or one of its dependencies could not be 
resolved: Failed to read artifact descriptor for 
org.eclipse.m2e:lifecycle-mapping:jar:1.0.0
[WARNING] The POM for org.eclipse.m2e:lifecycle-mapping:jar:1.0.0 is missing, 
no dependency information available
[WARNING] Failed to retrieve plugin descriptor for 
org.eclipse.m2e:lifecycle-mapping:1.0.0: Plugin 
org.eclipse.m2e:lifecycle-mapping:1.0.0 or one of its dependencies could not be 
resolved: Failed to read artifact descriptor for 
org.eclipse.m2e:lifecycle-mapping:jar:1.0.0
{noformat}

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch, 9941.patch, 
> 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13862211#comment-13862211
 ] 

Hadoop QA commented on HBASE-9941:
--

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12621452/9941.patch
  against trunk revision .
  ATTACHMENT ID: 12621452

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 3 new 
or modified tests.

{color:green}+1 hadoop1.0{color}.  The patch compiles against the hadoop 
1.0 profile.

{color:green}+1 hadoop1.1{color}.  The patch compiles against the hadoop 
1.1 profile.

{color:green}+1 javadoc{color}.  The javadoc tool did not generate any 
warning messages.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 1.3.9) warnings.

{color:red}-1 release audit{color}.  The applied patch generated 4 release 
audit warnings (more than the trunk's current 0 warnings).

{color:green}+1 lineLengths{color}.  The patch does not introduce lines 
longer than 100

{color:red}-1 site{color}.  The patch appears to cause mvn site goal to 
fail.

{color:green}+1 core tests{color}.  The patch passed unit tests in .

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8339//testReport/
Release audit warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8339//artifact/trunk/patchprocess/patchReleaseAuditProblems.txt
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8339//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8339//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8339//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8339//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8339//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8339//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8339//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8339//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8339//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8339//console

This message is automatically generated.

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch, 9941.patch, 
> 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13862183#comment-13862183
 ] 

Andrew Purtell commented on HBASE-9941:
---

I can see caliper at test scope in the classpath when I run 'mvn 
dependency:build-classpath' on the command line but it is not showing up in the 
generated file, which appears to be generated by running the exact same plugin 
and goal. Beats me. Maven "documentation" offers no clue. If I leave it at test 
scope the microbenchmark will compile but cannot be run from in tree or an 
untarred assembly. 

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch, 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13862170#comment-13862170
 ] 

Hadoop QA commented on HBASE-9941:
--

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12621442/9941.patch
  against trunk revision .
  ATTACHMENT ID: 12621442

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 5 new 
or modified tests.

{color:green}+1 hadoop1.0{color}.  The patch compiles against the hadoop 
1.0 profile.

{color:green}+1 hadoop1.1{color}.  The patch compiles against the hadoop 
1.1 profile.

{color:green}+1 javadoc{color}.  The javadoc tool did not generate any 
warning messages.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 1.3.9) warnings.

{color:red}-1 release audit{color}.  The applied patch generated 4 release 
audit warnings (more than the trunk's current 0 warnings).

{color:green}+1 lineLengths{color}.  The patch does not introduce lines 
longer than 100

{color:red}-1 site{color}.  The patch appears to cause mvn site goal to 
fail.

{color:green}+1 core tests{color}.  The patch passed unit tests in .

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8337//testReport/
Release audit warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8337//artifact/trunk/patchprocess/patchReleaseAuditProblems.txt
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8337//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8337//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8337//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8337//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8337//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8337//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8337//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8337//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8337//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8337//console

This message is automatically generated.

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch, 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13862169#comment-13862169
 ] 

Andrew Purtell commented on HBASE-9941:
---

Actually, I agree caliper shouldn't come in except when running tests. Let me 
figure out some Maven way to do what I want while having caliper at test scope.

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch, 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13862162#comment-13862162
 ] 

Andrew Purtell commented on HBASE-9941:
---

bq. Only comment is can the caliper dependency be {{test}}?  
Don't want to ship it as a dependency if it's only for test code.  

If I make it a test only dependency then this happens:
{noformat}
./bin/hbase org.apache.hadoop.hbase.CoprocessorInvocationEvaluation --trials 10
Exception in thread "main" java.lang.NoClassDefFoundError: 
com/google/caliper/SimpleBenchmark
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
at 
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Caused by: java.lang.ClassNotFoundException: com.google.caliper.SimpleBenchmark
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247
{noformat}

I will commit this shortly to trunk and 0.98 if no objections.

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch, 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Gary Helmling (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13862152#comment-13862152
 ] 

Gary Helmling commented on HBASE-9941:
--

+1 on the latest patch.

Only comment is can the caliper dependency be {{test}}?  Don't 
want to ship it as a dependency if it's only for test code.  Assuming that 
works, I'm fine to fix that bit on commit.

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch, 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13861879#comment-13861879
 ] 

Hadoop QA commented on HBASE-9941:
--

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12621363/9941.patch
  against trunk revision .
  ATTACHMENT ID: 12621363

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 5 new 
or modified tests.

{color:green}+1 hadoop1.0{color}.  The patch compiles against the hadoop 
1.0 profile.

{color:green}+1 hadoop1.1{color}.  The patch compiles against the hadoop 
1.1 profile.

{color:red}-1 javadoc{color}.  The javadoc tool appears to have generated 1 
warning messages.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 1.3.9) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:green}+1 lineLengths{color}.  The patch does not introduce lines 
longer than 100

{color:red}-1 site{color}.  The patch appears to cause mvn site goal to 
fail.

{color:green}+1 core tests{color}.  The patch passed unit tests in .

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8334//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8334//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8334//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8334//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8334//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8334//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8334//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8334//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8334//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8334//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8334//console

This message is automatically generated.

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13861856#comment-13861856
 ] 

Andrew Purtell commented on HBASE-9941:
---

bq. Shouldn't we keep the catch (Throwable e) here, unless that is redundant 
for some reason?

Good spotting, that appears to be a case where some text was accidentally 
highlighted under the cursor before a paste. Let me check each call site for 
those and get back with an updated patch.

bq. I see that preWALWrite() and postWALWrite() implementations are not doing 
the handleCoprocessorThrowable() handling on unexpected Throwables. Can you 
think of a reason WALCoprocessorHost should not do the same as others here?

No. I can try adding that in this patch, it's not too far out of scope, we are 
updating every upcall invocation.

bq. In my 20m row filter-everything-at-the-server test, it'd add 1.4s 
(20m*70ns) or about 20% runtime if there is at least RegionObserver registered

It also depends on the JVM. OpenJDK 7u45 on my test box has a difference of 
~50ns.

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Lars Hofhansl (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13861851#comment-13861851
 ] 

Lars Hofhansl commented on HBASE-9941:
--

Some of these are on hot codepaths (like preScannerNext, and especially 
postScannerFilterRow, which is already a problem sometimes - see HBASE-10047). 
In my 20m row filter-everything-at-the-server test, it'd add 1.4s (20m*70ns) or 
about 20% runtime if there is at least RegionObserver registered. (need to test 
in a real env, though)

At the same time, I do not see a better way to fix this.

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Gary Helmling (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13861848#comment-13861848
 ] 

Gary Helmling commented on HBASE-9941:
--

Looks good to me.

A couple of questions on the patch:

In RegionCoprocessorHost.java:
{noformat}
@@ -284,11 +284,14 @@ public class RegionCoprocessorHost
 for (RegionEnvironment env: coprocessors) {
   if (env.getInstance() instanceof RegionObserver) {
 ctx = ObserverContext.createAndPrepare(env, ctx);
- try {
+Thread currentThread = Thread.currentThread();
+ClassLoader cl = currentThread.getContextClassLoader();
+try {
+  currentThread.setContextClassLoader(env.getClassLoader());
   ((RegionObserver) env.getInstance()).preOpen(ctx);
- } catch (Throwable e) {
-   handleCoprocessorThrowable(env, e);
- }
+} finally {
+  currentThread.setContextClassLoader(cl);
+}
{noformat}

Shouldn't we keep the {{catch (Throwable e)}} here, unless that is redundant 
for some reason?

Technically outside the scope of this issue, but in WALCoprocessorHost.java, I 
see that preWALWrite() and postWALWrite() implementations are not doing the 
handleCoprocessorThrowable() handling on unexpected Throwables.  Can you think 
of a reason WALCoprocessorHost should not do the same as others here?  

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13861800#comment-13861800
 ] 

Andrew Purtell commented on HBASE-9941:
---

Also, FYI, the latest version of Caliper is 1.0-test-1, but it's built against 
a more recent version of Guava than we have available. We need to use Caliper 
0.5-rc1 or we will see linkage errors against Guava's Stopwatch class.

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13861787#comment-13861787
 ] 

Andrew Purtell commented on HBASE-9941:
---

Ping [~stack], [~lhofhansl], [~ghelmling]

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch, 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13861724#comment-13861724
 ] 

Andrew Purtell commented on HBASE-9941:
---

bq. How do I interpret these readings ?

That adding the classloader switching adds ~90ns per upcall.

bq. Log the exception above ?

It's a microbenchmark, this isn't needed or desired.




> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13861706#comment-13861706
 ] 

Ted Yu commented on HBASE-9941:
---

{code}
+   * Find a coprocessor environment by class name
+   * @param className the class name
+   * @return the coprocessor, or null if not found
{code}
nit: @return the coprocessor -> @return the coprocessor environment
{code}
+public class CoprocessorInvocationEvaluation extends SimpleBenchmark {
{code}
Add annotation for audience.
{code}
+cpHost.prePut(put, edit, Durability.SYNC_WAL);
+  } catch (IOException e) {
+  }
{code}
Log the exception above ?


> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13861613#comment-13861613
 ] 

Ted Yu commented on HBASE-9941:
---

Numbers for duration in the first table were around 10ns.
For the second table, average was about 98ns.

How do I interpret these readings ?

Thanks

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-03 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13861413#comment-13861413
 ] 

Hadoop QA commented on HBASE-9941:
--

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12621295/9941.patch
  against trunk revision .
  ATTACHMENT ID: 12621295

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 8 new 
or modified tests.

{color:red}-1 patch{color}.  The patch command could not apply the patch.

Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8331//console

This message is automatically generated.

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch, 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2014-01-02 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13861260#comment-13861260
 ] 

Hadoop QA commented on HBASE-9941:
--

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12621251/9941.patch
  against trunk revision .
  ATTACHMENT ID: 12621251

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 4 new 
or modified tests.

{color:green}+1 hadoop1.0{color}.  The patch compiles against the hadoop 
1.0 profile.

{color:green}+1 hadoop1.1{color}.  The patch compiles against the hadoop 
1.1 profile.

{color:red}-1 javadoc{color}.  The javadoc tool appears to have generated 4 
warning messages.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 1.3.9) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:red}-1 lineLengths{color}.  The patch introduces the following lines 
longer than 100:
+  ((MasterObserver) 
env.getInstance()).preModifyColumnHandler(ctx, tableName, descriptor);
+  ((MasterObserver) 
env.getInstance()).postModifyColumnHandler(ctx, tableName, descriptor);
+  public InternalScanner preFlush(final Store store, final InternalScanner 
scanner) throws IOException {

{color:red}-1 site{color}.  The patch appears to cause mvn site goal to 
fail.

{color:green}+1 core tests{color}.  The patch passed unit tests in .

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8326//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8326//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8326//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8326//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8326//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8326//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8326//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8326//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8326//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8326//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/8326//console

This message is automatically generated.

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
> Attachments: 9941.patch
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2013-12-09 Thread Benoit Sigoure (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13843974#comment-13843974
 ] 

Benoit Sigoure commented on HBASE-9941:
---

In any place.  For instance in {{prePut}} I could do {{new Foo()}} where the 
class {{Foo}} has never been used before, and thus only upon entering 
{{prePut}} would this class get loaded.

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Sub-task
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>Assignee: Andrew Purtell
> Fix For: 0.98.0
>
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)


[jira] [Commented] (HBASE-9941) The context ClassLoader isn't set while calling into a coprocessor

2013-11-11 Thread Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13819228#comment-13819228
 ] 

Ted Yu commented on HBASE-9941:
---

Can you clarify in which other place(s) your coprocessor code attempts to load 
classes ?

Thanks

> The context ClassLoader isn't set while calling into a coprocessor
> --
>
> Key: HBASE-9941
> URL: https://issues.apache.org/jira/browse/HBASE-9941
> Project: HBase
>  Issue Type: Bug
>  Components: Coprocessors
>Affects Versions: 0.96.0
>Reporter: Benoit Sigoure
>
> Whenever one of the methods of a coprocessor is invoked, the context 
> {{ClassLoader}} isn't set to be the {{CoprocessorClassLoader}}.  It's only 
> set properly when calling the coprocessor's {{start}} method.  This means 
> that if the coprocessor code attempts to load classes using the context 
> {{ClassLoader}}, it will fail to find the classes it's looking for.



--
This message was sent by Atlassian JIRA
(v6.1#6144)