boglesby commented on pull request #7422: URL: https://github.com/apache/geode/pull/7422#issuecomment-1072686192
With these changes, stopping a sender causes all in-progress events to be set possibleDuplicate. In this case, the events in batch 6 are set to possibleDuplicate: ``` ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: AbstractGatewaySenderEventProcessor.closeProcessor invoked ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: AbstractGatewaySenderEventProcessor.closeProcessor about to pendingEventsInBatchesMarkAsPossibleDuplicate ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: AbstractGatewaySenderEventProcessor.pendingEventsInBatchesMarkAsPossibleDuplicate batchIdToEventsMapSize=1; batchIdToEventsMapKeys=[6] ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: AbstractGatewaySenderEventProcessor.pendingEventsInBatchesMarkAsPossibleDuplicate about to setPossibleDuplicate batchId=6; eventsSize=73 ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: GatewaySenderEventImpl.setPossibleDuplicate queueKey=3968; possibleDuplicate=true; this.possibleDuplicate=false ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: GatewaySenderEventImpl.setPossibleDuplicate queueKey=3845; possibleDuplicate=true; this.possibleDuplicate=false ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: GatewaySenderEventImpl.setPossibleDuplicate queueKey=4209; possibleDuplicate=true; this.possibleDuplicate=false ... ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: GatewaySenderEventImpl.setPossibleDuplicate queueKey=9319; possibleDuplicate=true; this.possibleDuplicate=false ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: GatewaySenderEventImpl.setPossibleDuplicate queueKey=9590; possibleDuplicate=true; this.possibleDuplicate=false ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: GatewaySenderEventImpl.setPossibleDuplicate queueKey=4636; possibleDuplicate=true; this.possibleDuplicate=false ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: AbstractGatewaySenderEventProcessor.pendingEventsInBatchesMarkAsPossibleDuplicate done setPossibleDuplicate batchId=6; eventsSize=73 ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: AbstractGatewaySenderEventProcessor.pendingEventsInBatchesMarkAsPossibleDuplicate done batchIdToEventsMapSize=1; batchIdToEventsMapKeys=[6] ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: AbstractGatewaySenderEventProcessor.closeProcessor completed ``` In the current product, stopping a sender does not cause all in-progress events to be set possibleDuplicate. In this case, the events in batches 7 (not acked) and 6 (failed to send) are not set to possibleDuplicate: ``` Event Processor for GatewaySender_ny_3: AbstractGatewaySenderEventProcessor.processQueue about to dispatch batchId=7 Event Processor for GatewaySender_ny_3: AbstractGatewaySenderEventProcessor.processQueue done dispatch batchId=7; success=true AckReaderThread for : Event Processor for GatewaySender_ny_3: AckReaderThread.run null ack AckReaderThread for : Event Processor for GatewaySender_ny_3: AbstractGatewaySenderEventProcessor.handleException resetLastPeekedEvents=true Event Processor for GatewaySender_ny_3: AbstractGatewaySenderEventProcessor.processQueue about to dispatch batchId=8 Event Processor for GatewaySender_ny_3: AbstractGatewaySenderEventProcessor.processQueue done dispatch batchId=8; success=false ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: AbstractGatewaySenderEventProcessor.closeProcessor invoked ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: AbstractGatewaySenderEventProcessor.closeProcessor batchIdToEventsMapSize=2; batchIdToEventsMapKeys=[7, 8] ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: AbstractGatewaySenderEventProcessor.closeProcessor batchId=7; eventsSize=76 ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: AbstractGatewaySenderEventProcessor.closeProcessor batchId=8; eventsSize=3 ConcurrentParallelGatewaySenderEventProcessor Stopper Thread4: AbstractGatewaySenderEventProcessor.closeProcessor completed ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
