You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "tom liu (JIRA)" <ji...@apache.org> on 2010/11/03 07:38:24 UTC
[jira] Created: (HADOOP-7017) ipc.Client.Connection.receiveResponse
throws ClassNotFoundException when large requests are sent to RPC.Server
ipc.Client.Connection.receiveResponse throws ClassNotFoundException when large requests are sent to RPC.Server
--------------------------------------------------------------------------------------------------------------
Key: HADOOP-7017
URL: https://issues.apache.org/jira/browse/HADOOP-7017
Project: Hadoop Common
Issue Type: Bug
Components: ipc
Affects Versions: 0.20.2
Environment: JDK1.6/WindowsXP/CygWin/Tomcat6
Reporter: tom liu
i use solr with katta integration, pls see https://issues.apache.org/jira/browse/SOLR-1395
when i use:
{noformat}
ab -n 100 -c 10 http://localhost:8080/solr/select?q=solr&...
{noformat}
i found solr throws NPE, so, i added some code like below:
{code:title=ipc.Client.Connection|borderStyle=solid}
public void receiveResponse() {
...
try {
...
...
} catch (IOException e) {
markClosed(e);
} catch (RunTimeException t) {
LOG.error("Unexpected error reading responses on connection ", t);
throw t;
}
}
{code}
then, i catch the ClassNotFoundException:
{noformat}
java.lang.RuntimeException: readObject can't find class om-SL510?(responseê`?$name...
at org.apache.hadoop.io.ObjectWritable.readObject(ObjectWritable.java:185)
at org.apache.hadoop.io.ObjectWritable.readFields(ObjectWritable.java:66)
at org.apache.hadoop.ipc.Client$Connection.receiveResponse(Client.java:511)
Caused by: java.lang.ClassNotFoundException: om-SL510?(responseê`?$name...
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:762)
at org.apache.hadoop.io.ObjectWritable.readObject(ObjectWritable.java:183)
{noformat}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HADOOP-7017)
ipc.Client.Connection.receiveResponse throws ClassNotFoundException when
large requests are sent to RPC.Server
Posted by "tom liu (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HADOOP-7017?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12970071#action_12970071 ]
tom liu commented on HADOOP-7017:
---------------------------------
after this patch, i has been run about one month successfully.
> ipc.Client.Connection.receiveResponse throws ClassNotFoundException when large requests are sent to RPC.Server
> --------------------------------------------------------------------------------------------------------------
>
> Key: HADOOP-7017
> URL: https://issues.apache.org/jira/browse/HADOOP-7017
> Project: Hadoop Common
> Issue Type: Bug
> Components: ipc
> Affects Versions: 0.20.2
> Environment: JDK1.6/WindowsXP/CygWin/Tomcat6
> Reporter: tom liu
> Attachments: diff.patch
>
>
> i use solr with katta integration, pls see https://issues.apache.org/jira/browse/SOLR-1395
> when i use:
> {noformat}
> ab -n 100 -c 10 http://localhost:8080/solr/select?q=solr&...
> {noformat}
> i found solr throws NPE, so, i added some code like below:
> {code:title=ipc.Client.Connection|borderStyle=solid}
> public void receiveResponse() {
> ...
> try {
> ...
> ...
> } catch (IOException e) {
> markClosed(e);
> } catch (RunTimeException t) {
> LOG.error("Unexpected error reading responses on connection ", t);
> throw t;
> }
> }
> {code}
> then, i catch the ClassNotFoundException:
> {noformat}
> java.lang.RuntimeException: readObject can't find class om-SL510?(responseê`?$name...
> at org.apache.hadoop.io.ObjectWritable.readObject(ObjectWritable.java:185)
> at org.apache.hadoop.io.ObjectWritable.readFields(ObjectWritable.java:66)
> at org.apache.hadoop.ipc.Client$Connection.receiveResponse(Client.java:511)
> Caused by: java.lang.ClassNotFoundException: om-SL510?(responseê`?$name...
> at java.lang.Class.forName0(Native Method)
> at java.lang.Class.forName(Class.java:247)
> at org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:762)
> at org.apache.hadoop.io.ObjectWritable.readObject(ObjectWritable.java:183)
> {noformat}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HADOOP-7017) ipc.Client.Connection.receiveResponse
throws ClassNotFoundException when large requests are sent to RPC.Server
Posted by "tom liu (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HADOOP-7017?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
tom liu updated HADOOP-7017:
----------------------------
Attachment: diff.patch
in ipc, the data format that Client send request to servers, is:
{noformat}
data-length:int,data:byte[data-length]
{noformat}
but, Server send response to client, is:
{noformat}
callid,state,data
{noformat}
i think the problem is happened when client deserialed data.
so, i changed server and client communication that use request format.
and, i found that did not throw ClassNotFoundException.
but, i am not sure that is the problem.
> ipc.Client.Connection.receiveResponse throws ClassNotFoundException when large requests are sent to RPC.Server
> --------------------------------------------------------------------------------------------------------------
>
> Key: HADOOP-7017
> URL: https://issues.apache.org/jira/browse/HADOOP-7017
> Project: Hadoop Common
> Issue Type: Bug
> Components: ipc
> Affects Versions: 0.20.2
> Environment: JDK1.6/WindowsXP/CygWin/Tomcat6
> Reporter: tom liu
> Attachments: diff.patch
>
>
> i use solr with katta integration, pls see https://issues.apache.org/jira/browse/SOLR-1395
> when i use:
> {noformat}
> ab -n 100 -c 10 http://localhost:8080/solr/select?q=solr&...
> {noformat}
> i found solr throws NPE, so, i added some code like below:
> {code:title=ipc.Client.Connection|borderStyle=solid}
> public void receiveResponse() {
> ...
> try {
> ...
> ...
> } catch (IOException e) {
> markClosed(e);
> } catch (RunTimeException t) {
> LOG.error("Unexpected error reading responses on connection ", t);
> throw t;
> }
> }
> {code}
> then, i catch the ClassNotFoundException:
> {noformat}
> java.lang.RuntimeException: readObject can't find class om-SL510?(responseê`?$name...
> at org.apache.hadoop.io.ObjectWritable.readObject(ObjectWritable.java:185)
> at org.apache.hadoop.io.ObjectWritable.readFields(ObjectWritable.java:66)
> at org.apache.hadoop.ipc.Client$Connection.receiveResponse(Client.java:511)
> Caused by: java.lang.ClassNotFoundException: om-SL510?(responseê`?$name...
> at java.lang.Class.forName0(Native Method)
> at java.lang.Class.forName(Class.java:247)
> at org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:762)
> at org.apache.hadoop.io.ObjectWritable.readObject(ObjectWritable.java:183)
> {noformat}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.