exceptionfactory commented on PR #10538:
URL: https://github.com/apache/nifi/pull/10538#issuecomment-3715743866

   Thanks for the thoughtful reply @turcsanyip.
   
   Although this capability and general approach was implemented in NiFi 1, 
part of the purpose of refactoring Kafka support was to provide better 
decoupling of features. The majority of that separation comes with the Kafka 
Connection Service, and it is good to see that these proposed changes have 
minimal impact on that Controller Service interface surface.
   
   With that being said, the proposed changes do introduce significant logic 
into `ConsumeKafka` that is specific to this particular capability. Although it 
does not impact existing configuration, it does increase the maintenance of the 
`ConsumeKafka` implementation in general. For that reason, I would much rather 
see this particular use case decoupled into its own Processor.
   
   A separate Processor also has benefits from a flow design perspective, as it 
provides a clearer distinction on the intended use case of static partition 
assignment to individual NiFi nodes. Given that such a use case is less common, 
keeping it distinct from the regular `ConsumeKafka` Processor is helpful from 
both a flow design and component implementation perspective. From an implement 
perspective, it also provides the opportunity to define more of the 
implementation in the Processor itself, versus in a separate Util class. Of 
course these are tradeoffs, but I think the benefits outweigh the costs.


-- 
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]

Reply via email to