[
https://issues.apache.org/jira/browse/GEODE-2133?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15682155#comment-15682155
]
ASF subversion and git services commented on GEODE-2133:
--------------------------------------------------------
Commit bb419793a4ff199c700ef0f327040bee05753d08 in incubator-geode's branch
refs/heads/develop from [~barry.oglesby]
[ https://git-wip-us.apache.org/repos/asf?p=incubator-geode.git;h=bb41979 ]
GEODE-2133: Changed AckReaderThread to not shutdown while logging batch
exceptions
> An exception in a receiving site can cause the sender site's AckReaderThread
> to stop
> ------------------------------------------------------------------------------------
>
> Key: GEODE-2133
> URL: https://issues.apache.org/jira/browse/GEODE-2133
> Project: Geode
> Issue Type: Bug
> Components: wan
> Reporter: Barry Oglesby
>
> This is the same bug as GEM-1100.
> If the receiving site throws an exception, the sendeing site's
> AckReaderThread BatchException logging can fail and cause the thread to stop.
> The BatchException logging handles exceptions that occur while processing
> GatewaySenderEvents, but it doesn't handle other kinds of exceptions (like
> NPEs processing PdxType updates).
> Here are the relevant sending site log messages:
> {noformat}
> [warning 2016/11/18 12:00:18.856 PST ln-1 <AckReaderThread for : Event
> Processor for GatewaySender_ny_2> tid=0x71] A BatchException occurred
> processing events. Index of Array of Exception : -1
> org.apache.geode.internal.cache.wan.BatchException70: Exception occurred
> while processing a batch on the receiver running on DistributedSystem with
> Id: 1, DistributedMember on which the receiver is running:
> 192.168.2.10(ny-1:18934)<v1>:1027
> at
> org.apache.geode.internal.cache.tier.sockets.command.GatewayReceiverCommand.cmdExecute(GatewayReceiverCommand.java:714)
> at
> org.apache.geode.internal.cache.tier.sockets.BaseCommand.execute(BaseCommand.java:141)
> at
> org.apache.geode.internal.cache.tier.sockets.ServerConnection.doNormalMsg(ServerConnection.java:776)
> at
> org.apache.geode.internal.cache.tier.sockets.ServerConnection.doOneMessage(ServerConnection.java:904)
> at
> org.apache.geode.internal.cache.tier.sockets.ServerConnection.run(ServerConnection.java:1160)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at
> org.apache.geode.internal.cache.tier.sockets.AcceptorImpl$1$1.run(AcceptorImpl.java:519)
> at java.lang.Thread.run(Thread.java:745)
> Caused by: java.lang.NullPointerException
> at
> org.apache.geode.pdx.internal.PeerTypeRegistration$2.beforeUpdate(PeerTypeRegistration.java:173)
> at
> org.apache.geode.internal.cache.SearchLoadAndWriteProcessor.doLocalWrite(SearchLoadAndWriteProcessor.java:845)
> at
> org.apache.geode.internal.cache.SearchLoadAndWriteProcessor.doNetWrite(SearchLoadAndWriteProcessor.java:182)
> at
> org.apache.geode.internal.cache.DistributedRegion.cacheWriteBeforePut(DistributedRegion.java:2687)
> at
> org.apache.geode.internal.cache.AbstractRegionMap.invokeCacheWriter(AbstractRegionMap.java:3008)
> at
> org.apache.geode.internal.cache.AbstractRegionMap.basicPut(AbstractRegionMap.java:2769)
> at
> org.apache.geode.internal.cache.LocalRegion.virtualPut(LocalRegion.java:5750)
> at
> org.apache.geode.internal.cache.DistributedRegion.virtualPut(DistributedRegion.java:337)
> at
> org.apache.geode.internal.cache.LocalRegionDataView.putEntry(LocalRegionDataView.java:151)
> at
> org.apache.geode.internal.cache.LocalRegion.basicUpdate(LocalRegion.java:5730)
> at
> org.apache.geode.internal.cache.LocalRegion.basicBridgePut(LocalRegion.java:5374)
> at
> org.apache.geode.internal.cache.tier.sockets.command.GatewayReceiverCommand.cmdExecute(GatewayReceiverCommand.java:468)
> ... 8 more
> [severe 2016/11/18 12:00:18.856 PST ln-1 <AckReaderThread for : Event
> Processor for GatewaySender_ny_2> tid=0x71] Stopping the processor because
> the following exception occurred while processing a batch:
> java.lang.ArrayIndexOutOfBoundsException: -1
> at java.util.ArrayList.elementData(ArrayList.java:418)
> at java.util.ArrayList.get(ArrayList.java:431)
> at
> org.apache.geode.internal.cache.wan.GatewaySenderEventRemoteDispatcher$AckReaderThread.logBatchExceptions(GatewaySenderEventRemoteDispatcher.java:721)
> at
> org.apache.geode.internal.cache.wan.GatewaySenderEventRemoteDispatcher$AckReaderThread.run(GatewaySenderEventRemoteDispatcher.java:623)
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)