Joseph Percivall created NIFI-2835:
--------------------------------------

             Summary: GetAzureEventHub processor should leverage partition 
offset to better handle restarts
                 Key: NIFI-2835
                 URL: https://issues.apache.org/jira/browse/NIFI-2835
             Project: Apache NiFi
          Issue Type: Improvement
            Reporter: Joseph Percivall


The GetAzureEventHub processor utilizes the Azure client that consists of 
receivers for each partition. The processor stores them in a map[1] that gets 
cleared every time the processor is stopped[2]. These receivers have partition 
offsets which keep track of which message it's currently on and which it should 
receive next. So currently, when the processor is stopped/restarted, any 
tracking of which message is next to be received is lost.

If instead of clearing the map each time, we hold onto the receivers, or kept 
track of the partitionId/Offsets when stopping, (barring any relevant 
configuration changes) the processor would restart exactly where it left off 
with no loss of data.

This would work very well with NIFI-2826.


[1]https://github.com/apache/nifi/blob/master/nifi-nar-bundles/nifi-azure-bundle/nifi-azure-processors/src/main/java/org/apache/nifi/processors/azure/eventhub/GetAzureEventHub.java#L122
[2] 
https://github.com/apache/nifi/blob/master/nifi-nar-bundles/nifi-azure-bundle/nifi-azure-processors/src/main/java/org/apache/nifi/processors/azure/eventhub/GetAzureEventHub.java#L229



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to