[
https://issues.jboss.org/browse/JGRP-2263?page=com.atlassian.jira.plugin....
]
rama rama edited comment on JGRP-2263 at 4/24/18 3:01 AM:
----------------------------------------------------------
i.think we are randomly try to find a solution for that:) :) did u try the proposed fix?
the first one doesn't work and implementing streamable, looking at code, doesn't
seems promising....
----------
if(obj instanceof Throwable) {
ByteArrayDataOutputStream out=new ByteArrayDataOutputStream(512, true);
out.write(TYPE_EXCEPTION);
Util.exceptionToStream((Throwable)obj, out);
return out.getBuffer();
}
if(obj instanceof Streamable) {
int expected_size=obj instanceof SizeStreamable?
((SizeStreamable)obj).serializedSize() : 512;
final ByteArrayDataOutputStream out=new
ByteArrayDataOutputStream(expected_size, true);
out.write(TYPE_STREAMABLE);
writeGenericStreamable((Streamable)obj,out);
return out.getBuffer();
}
-----
if the first if it's catches then the second one doesn't
m. make it streamable doesn't seems to make any difference. what do u think?
was (Author: ramarro123):
i.think we are randomly try to find a solution for that:) :) did u try the proposed fix?
the first one doesn't work and implementing streamable, looking at code, doesn't
seems promising....
----------
if(obj instanceof Throwable) {
ByteArrayDataOutputStream out=new ByteArrayDataOutputStream(512, true);
out.write(TYPE_EXCEPTION);
Util.exceptionToStream((Throwable)obj, out);
return out.getBuffer();
}
if(obj instanceof Streamable) {
int expected_size=obj instanceof SizeStreamable?
((SizeStreamable)obj).serializedSize() : 512;
final ByteArrayDataOutputStream out=new
ByteArrayDataOutputStream(expected_size, true);
out.write(TYPE_STREAMABLE);
writeGenericStreamable((Streamable)obj,out);
return out.getBuffer();
}
-----
if the first if it's catches then the second one doesn't
m. make it streamable doesn't seems to make any difference. what do u think?
can u please re open the issue?
GRAVE: JGRP000225: failed unmarshalling buffer into return value
----------------------------------------------------------------
Key: JGRP-2263
URL:
https://issues.jboss.org/browse/JGRP-2263
Project: JGroups
Issue Type: Bug
Affects Versions: 4.0.11
Environment: jdk1.8.0_66.jdk
osx 10.10 & ubuntu 17.10
Reporter: rama rama
Assignee: Bela Ban
Attachments: SimpleChat.java
trying to send a class that previous work with 3.x return
"failed unmarshalling buffer into return value"
jgroups instance it's configured with the default settings
i create a test case to reproduce it, executing this class on my 2 boxes return
----
GRAVE: JGRP000225: failed unmarshalling buffer into return value
java.lang.InstantiationException: com.eg.util.comm.SimpleChat$EError
at java.lang.Class.newInstance(Class.java:427)
at org.jgroups.util.Util.readException(Util.java:899)
at org.jgroups.util.Util.exceptionFromStream(Util.java:843)
at org.jgroups.util.Util.exceptionFromStream(Util.java:831)
at org.jgroups.util.Util.objectFromStream(Util.java:782)
at org.jgroups.util.Util.objectFromStream(Util.java:742)
at org.jgroups.blocks.RequestCorrelator.replyFromBuffer(RequestCorrelator.java:463)
at org.jgroups.blocks.RequestCorrelator.handleResponse(RequestCorrelator.java:408)
at org.jgroups.blocks.RequestCorrelator.dispatch(RequestCorrelator.java:363)
at org.jgroups.blocks.RequestCorrelator.receiveMessageBatch(RequestCorrelator.java:326)
at org.jgroups.blocks.MessageDispatcher$ProtocolAdapter.up(MessageDispatcher.java:589)
at org.jgroups.JChannel.up(JChannel.java:837)
at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:896)
at org.jgroups.stack.Protocol.up(Protocol.java:372)
at org.jgroups.protocols.RSVP.up(RSVP.java:233)
at org.jgroups.protocols.FRAG2.up(FRAG2.java:196)
at org.jgroups.protocols.FlowControl.up(FlowControl.java:416)
at org.jgroups.protocols.FlowControl.up(FlowControl.java:416)
at org.jgroups.stack.Protocol.up(Protocol.java:372)
at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:293)
at org.jgroups.protocols.UNICAST3.deliverBatch(UNICAST3.java:1024)
at org.jgroups.protocols.UNICAST3.removeAndDeliver(UNICAST3.java:833)
at org.jgroups.protocols.UNICAST3.handleBatchFromSelf(UNICAST3.java:520)
at org.jgroups.protocols.UNICAST3.up(UNICAST3.java:435)
at org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:697)
at org.jgroups.protocols.BARRIER.up(BARRIER.java:195)
at org.jgroups.stack.Protocol.up(Protocol.java:372)
at org.jgroups.protocols.FD_ALL.up(FD_ALL.java:212)
at org.jgroups.stack.Protocol.up(Protocol.java:372)
at org.jgroups.stack.Protocol.up(Protocol.java:372)
at org.jgroups.stack.Protocol.up(Protocol.java:372)
at org.jgroups.protocols.TP.passBatchUp(TP.java:1274)
at
org.jgroups.util.MaxOneThreadPerSender$BatchHandlerLoop.passBatchUp(MaxOneThreadPerSender.java:284)
at org.jgroups.util.SubmitToThreadPool$BatchHandler.run(SubmitToThreadPool.java:136)
at
org.jgroups.util.MaxOneThreadPerSender$BatchHandlerLoop.run(MaxOneThreadPerSender.java:273)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NoSuchMethodException:
com.eg.util.comm.SimpleChat$EError.<init>()
at java.lang.Class.getConstructor0(Class.java:3082)
at java.lang.Class.newInstance(Class.java:412)
... 37 more
-----
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)