ChrisSamo632 commented on pull request #5299: URL: https://github.com/apache/nifi/pull/5299#issuecomment-912966926
On the question from @MikeThomsen and response from @eylonronen, I'd say the main thing that's missing in this implementation is any error handling within the simple round-robin implementation in this PR. The Elasticsearch Client will (optionally) sniff the Elasticsearch cluster for all available hosts/URLs at startup/on connection - this implementation here relies upon the NiFi user configuring all the current Elasticsearch hosts and keeping them updated if the cluster membership changes. Also, the Elasticsearch client will temporarily stop trying to connect to a host it knows is not responding - this PR will instead result in operations failing for any hosts that go offline (for example) and the NiFi user will need to cater for that, e.g. with a Retry loop on failure That's not to say that this approach isn't a potentially useful option for Elasticsearch cluster users, it certainly avoids the need for them to introduce a load balancer in front of Elasticsearch if they don't already have one, and it will mean that if the single host they were able to connect with previously were to go offline, then others being configured in the processors means operations would work at least some of the time. Generally I'd recommend people using the Elasticsearch Client-based processors where possible, but these OkHttp based processors have some functionality that the newer ES Client ones don't currently, so they're still relevant and this update feels like it's probably going to be useful. -- 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]
