[ https://issues.apache.org/jira/browse/NIFI-3576?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16423085#comment-16423085 ]
ASF GitHub Bot commented on NIFI-3576: -------------------------------------- Github user mattyb149 commented on a diff in the pull request: https://github.com/apache/nifi/pull/2601#discussion_r178641076 --- Diff: nifi-nar-bundles/nifi-elasticsearch-bundle/nifi-elasticsearch-processors/src/main/java/org/apache/nifi/processors/elasticsearch/QueryElasticsearchHttp.java --- @@ -219,6 +256,39 @@ public void setup(ProcessContext context) { super.setup(context); } + @Override + public void onPropertyModified(final PropertyDescriptor descriptor, final String oldValue, final String newValue) { + if (ROUTING_QUERY_INFO_STRATEGY.equals(descriptor)) { + if (ALWAYS.getValue().equalsIgnoreCase(newValue)) { + final Set<Relationship> routeQueryInfoRels = new HashSet<>(); + routeQueryInfoRels.add(REL_SUCCESS); + routeQueryInfoRels.add(REL_FAILURE); + routeQueryInfoRels.add(REL_RETRY); + routeQueryInfoRels.add(REL_QUERY_INFO); + this.relationships = routeQueryInfoRels; + + this.queryInfoRouteStrategy = QueryInfoRouteStrategy.ALWAYS; + }else if (NO_HITS.getValue().equalsIgnoreCase(newValue)) { + final Set<Relationship> routeQueryInfoRels = new HashSet<>(); + routeQueryInfoRels.add(REL_SUCCESS); + routeQueryInfoRels.add(REL_FAILURE); + routeQueryInfoRels.add(REL_RETRY); + routeQueryInfoRels.add(REL_QUERY_INFO); + this.relationships = routeQueryInfoRels; + + this.queryInfoRouteStrategy = QueryInfoRouteStrategy.NOHIT; + } + }else { --- End diff -- I believe that will work. Also MockProcessContext calls onPropertyModified on set/removeProperty(), so you might be able to parlay that into a unit test to check that the relationship is available or not (but I'm not sure) > QueryElasticsearchHttp should have a "Not Found"/"Zero results" relationship > ---------------------------------------------------------------------------- > > Key: NIFI-3576 > URL: https://issues.apache.org/jira/browse/NIFI-3576 > Project: Apache NiFi > Issue Type: Improvement > Reporter: Joseph Percivall > Assignee: Otto Fowler > Priority: Minor > > In the event of a successful call, QueryElasticsearchHttp always drops the > incoming flowfile and then emits pages of results to the success > relationship. If the search returns no results then no pages of results are > emitted to the success relationship. > The processor should offer other options for handling when there are no > results returned. -- This message was sent by Atlassian JIRA (v7.6.3#76005)