You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Dick Cavender (Jira)" <ji...@apache.org> on 2020/11/18 00:38:02 UTC

[jira] [Closed] (GEODE-8584) Message transmission fails with IllegalStateException in socket i/o code

     [ https://issues.apache.org/jira/browse/GEODE-8584?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dick Cavender closed GEODE-8584.
--------------------------------

> Message transmission fails with IllegalStateException in socket i/o code
> ------------------------------------------------------------------------
>
>                 Key: GEODE-8584
>                 URL: https://issues.apache.org/jira/browse/GEODE-8584
>             Project: Geode
>          Issue Type: Bug
>          Components: membership, messaging
>    Affects Versions: 1.12.0, 1.13.0, 1.14.0
>            Reporter: Bruce J Schuchardt
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.12.1, 1.14.0, 1.13.1
>
>
> Transmission of an update operation failed with a toData exception caused by an IllegalStateException in socket i/o code.  It shouldn't be possible for this exception to happen unless multiple threads are using the buffer at the same time.
>  
> {noformat}
> org.apache.geode.ToDataException: toData failed on dsfid=71 msg:null
> 	at org.apache.geode.internal.InternalDataSerializer.writeDSFID(InternalDataSerializer.java:1509)
> 	at org.apache.geode.internal.tcp.MsgStreamer.writeMessage(MsgStreamer.java:249)
> 	at org.apache.geode.distributed.internal.direct.DirectChannel.sendToMany(DirectChannel.java:306)
> 	at org.apache.geode.distributed.internal.direct.DirectChannel.sendToOne(DirectChannel.java:182)
> 	at org.apache.geode.distributed.internal.direct.DirectChannel.send(DirectChannel.java:511)
> 	at org.apache.geode.distributed.internal.DistributionImpl.directChannelSend(DistributionImpl.java:346)
> 	at org.apache.geode.distributed.internal.DistributionImpl.send(DistributionImpl.java:291)
> 	at org.apache.geode.distributed.internal.ClusterDistributionManager.sendViaMembershipManager(ClusterDistributionManager.java:2053)
> 	at org.apache.geode.distributed.internal.ClusterDistributionManager.sendOutgoing(ClusterDistributionManager.java:1981)
> 	at org.apache.geode.distributed.internal.ClusterDistributionManager.sendMessage(ClusterDistributionManager.java:2018)
> 	at org.apache.geode.distributed.internal.ClusterDistributionManager.putOutgoing(ClusterDistributionManager.java:1083)
> 	at org.apache.geode.internal.cache.DistributedCacheOperation._distribute(DistributedCacheOperation.java:572)
> 	at org.apache.geode.internal.cache.DistributedCacheOperation.startOperation(DistributedCacheOperation.java:277)
> 	at org.apache.geode.internal.cache.DistributedCacheOperation.distribute(DistributedCacheOperation.java:318)
> 	at org.apache.geode.internal.cache.DistributedRegion.distributeUpdate(DistributedRegion.java:520)
> 	at org.apache.geode.internal.cache.DistributedRegion.basicPutPart3(DistributedRegion.java:498)
> 	at org.apache.geode.internal.cache.map.RegionMapPut.doAfterCompletionActions(RegionMapPut.java:307)
> 	at org.apache.geode.internal.cache.map.AbstractRegionMapPut.doPut(AbstractRegionMapPut.java:185)
> 	at org.apache.geode.internal.cache.map.AbstractRegionMapPut.runWhileLockedForCacheModification(AbstractRegionMapPut.java:119)
> 	at org.apache.geode.internal.cache.map.RegionMapPut.runWhileLockedForCacheModification(RegionMapPut.java:161)
> 	at org.apache.geode.internal.cache.map.AbstractRegionMapPut.put(AbstractRegionMapPut.java:169)
> 	at org.apache.geode.internal.cache.AbstractRegionMap.basicPut(AbstractRegionMap.java:2044)
> 	at org.apache.geode.internal.cache.LocalRegion.virtualPut(LocalRegion.java:5599)
> 	at org.apache.geode.internal.cache.DistributedRegion.virtualPut(DistributedRegion.java:393)
> 	at org.apache.geode.internal.cache.LocalRegion.virtualPut(LocalRegion.java:5577)
> 	at org.apache.geode.internal.cache.LocalRegionDataView.putEntry(LocalRegionDataView.java:157)
> 	at org.apache.geode.internal.cache.LocalRegion.basicPut(LocalRegion.java:5035)
> 	at org.apache.geode.internal.cache.LocalRegion.replaceWithCallbackArgument(LocalRegion.java:10600)
> 	at org.apache.geode.internal.cache.LocalRegion.replace(LocalRegion.java:10566)
>         [application code traces deleted]
> Caused by: java.lang.IllegalArgumentException
> 	at java.nio.Buffer.position(Buffer.java:244)
> 	at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:96)
> 	at sun.nio.ch.IOUtil.write(IOUtil.java:51)
> 	at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:469)
> 	at org.apache.geode.internal.tcp.Connection.writeFully(Connection.java:2596)
> 	at org.apache.geode.internal.tcp.Connection.sendPreserialized(Connection.java:1866)
> 	at org.apache.geode.internal.tcp.MsgStreamer.realFlush(MsgStreamer.java:330)
> 	at org.apache.geode.internal.tcp.MsgStreamer.write(MsgStreamer.java:390)
> 	at org.apache.geode.DataSerializer.writeByteArray(DataSerializer.java:1185)
> 	at org.apache.geode.DataSerializer.writeByteArray(DataSerializer.java:1153)
> 	at org.apache.geode.internal.cache.DistributedCacheOperation.writeValue(DistributedCacheOperation.java:137)
> 	at org.apache.geode.internal.cache.UpdateOperation$UpdateMessage.toData(UpdateOperation.java:417)
> 	at org.apache.geode.internal.serialization.internal.DSFIDSerializerImpl.invokeToData(DSFIDSerializerImpl.java:213)
> 	at org.apache.geode.internal.serialization.internal.DSFIDSerializerImpl.write(DSFIDSerializerImpl.java:137)
> 	at org.apache.geode.internal.InternalDataSerializer.writeDSFID(InternalDataSerializer.java:1484)
> 	... 37 more {noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)