Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Getting - Failure to deserialize an Invocable object: java.io.EOFException #133

Open
sunilchaurha opened this issue Dec 10, 2024 · 3 comments
Labels

Comments

@sunilchaurha
Copy link

Type of question

I am getting "Failure to deserialize an Invocable object: java.io.EOFException" while using coherence-21.12.7 version with java-8

Question

What I did..
I started coherence cluster on wildows 10 with java 8. Cluster starts fine but when another member joins the cluster to access cache, I am getting deserialization error.

Environment

Error:

2024-12-10 16:19:16.816/87.596 Oracle Coherence CE n/a (thread=Transport:TransportService, member=1): Member 2 joined Service TransportService with senior member 1
2024-12-10 16:19:16.850/87.631 Oracle Coherence CE n/a (thread=Invocation:Management, member=1): Member 2 joined Service Management with senior member 1
2024-12-10 16:19:16.886/87.666 Oracle Coherence CE n/a (thread=SelectionService(channels=10, selector=MultiplexedSelector(sun.nio.ch.WindowsSelectorImpl@72ee5d84), id=1757933443), member=1): Failure to deserialize an Invocable object: java.io.EOFException
java.io.EOFException
at com.tangosol.io.nio.ByteBufferReadBuffer$ByteBufferInput.readByte(ByteBufferReadBuffer.java:438)
at com.tangosol.io.AbstractReadBuffer$AbstractBufferInput.readUnsignedByte(AbstractReadBuffer.java:471)
at com.tangosol.io.AbstractReadBuffer$AbstractBufferInput.readPackedLong(AbstractReadBuffer.java:615)
at com.tangosol.io.WrapperBufferInput.readPackedLong(WrapperBufferInput.java:105)
at com.tangosol.util.ExternalizableHelper.readLong(ExternalizableHelper.java:952)
at com.tangosol.coherence.component.net.management.model.localModel.ClusterNodeModel.readExternal(ClusterNodeModel.CDB:70)
at com.tangosol.util.ExternalizableHelper.readExternalizableLite(ExternalizableHelper.java:2396)
at com.tangosol.util.ExternalizableHelper.readObjectInternal(ExternalizableHelper.java:2786)
at com.tangosol.util.ExternalizableHelper.readObject(ExternalizableHelper.java:2697)
at com.tangosol.coherence.component.net.management.Connector$Register.readLocalModelArray(Connector.CDB:11)
at com.tangosol.coherence.component.net.management.Connector$Register.readLocalModelArray(Connector.CDB:9)
at com.tangosol.coherence.component.net.management.Connector$Register.readExternal(Connector.CDB:5)
at com.tangosol.util.ExternalizableHelper.readExternalizableLite(ExternalizableHelper.java:2396)
at com.tangosol.util.ExternalizableHelper.readObjectInternal(ExternalizableHelper.java:2786)
at com.tangosol.util.ExternalizableHelper.readObject(ExternalizableHelper.java:2697)
at com.tangosol.io.DefaultSerializer.deserialize(DefaultSerializer.java:75)
at com.tangosol.coherence.component.util.daemon.queueProcessor.Service.readObject(Service.CDB:1)
at com.tangosol.coherence.component.net.Message.readObject(Message.CDB:1)
at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.InvocationService$InvocationMessage.read(InvocationService.CDB:8)
at com.tangosol.coherence.component.util.daemon.queueProcessor.service.Grid.deserializeMessage(Grid.CDB:30)
at com.tangosol.coherence.component.net.MessageHandler$Connection.prepareMessage(MessageHandler.CDB:52)
at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.TransportService$MessageHandler$Connection.prepareMessage(TransportService.CDB:3)
at com.tangosol.coherence.component.net.MessageHandler.processMessage(MessageHandler.CDB:31)
at com.tangosol.coherence.component.net.MessageHandler$EventCollector.add(MessageHandler.CDB:51)
at com.oracle.coherence.common.internal.net.socketbus.AbstractSocketBus.addEvent(AbstractSocketBus.java:857)
at com.oracle.coherence.common.internal.net.socketbus.SocketMessageBus$MessageConnection$ReadBatch.onReady(SocketMessageBus.java:803)
at com.oracle.coherence.common.internal.net.socketbus.SocketMessageBus$MessageConnection$ReadBatch.read(SocketMessageBus.java:645)
at com.oracle.coherence.common.internal.net.socketbus.SocketMessageBus$MessageConnection.processReads(SocketMessageBus.java:212)
at com.oracle.coherence.common.internal.net.socketbus.BufferedSocketBus$BufferedConnection.onReadySafe(BufferedSocketBus.java:707)
at com.oracle.coherence.common.internal.net.socketbus.AbstractSocketBus$Connection.onReady(AbstractSocketBus.java:2151)
at com.oracle.coherence.common.internal.net.RunnableSelectionService.process(RunnableSelectionService.java:407)
at com.oracle.coherence.common.internal.net.RunnableSelectionService.run(RunnableSelectionService.java:280)
at com.oracle.coherence.common.internal.net.ResumableSelectionService.run(ResumableSelectionService.java:139)
at java.lang.Thread.run(Thread.java:750)
Message Message "InvocationMessage"
{
FromMember=Member(Id=2, Timestamp=2024-12-10 16:19:15.482, Address=100.70.2.217:9090, MachineId=54455, Location=site:putnaminv.com,machine:DESKTOP-VUUV7EV,process:8796, Role=SpringframeworkBootLoaderJarLauncher)
FromMessageId=0
MessagePartCount=0
PendingCount=0
MessageType=35
ToPollId=0
Poll=null
Service=InvocationService{Name=Management, State=(SERVICE_STARTED), Id=2, OldestMemberId=1}
ToMemberSet=null
NotifyDelivery=false
InvocationMessage{Task=null}
}
2024-12-10 16:19:18.288/89.068 Oracle Coherence CE n/a (thread=Invocation:INVOCATION_SERVICE, member=1): Member 2 joined Service INVOCATION_SERVICE with senior member 1

@thegridman
Copy link
Member

First, you are using a very old and unsupported version of Coherence CE. The only supported versions are 22.06 (which is an LTS version) and 24.09 which is non-LTS and will be supported until the next CE release.

I see you are using Spring, have you tried to shade Coherence jar into a fat Spring jar? Older versions of Coherence had issues with this, so a more recent and supported version might work.

@kirklund
Copy link

If you still get an error after you update to a newer version of CE:

  1. Make sure you don't have any older Coherence CE processes running.
  2. Please provide the output of jps or ps (ps -ef | grep java | grep -v grep or ps aux | grep java | grep -v grep).
  3. Please provide the commands you used to launch the Coherence processes and how many you launched.

@sunilchaurha
Copy link
Author

sunilchaurha commented Dec 14, 2024 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants