Github user MikeThomsen commented on a diff in the pull request:
https://github.com/apache/nifi/pull/2101#discussion_r165812983
--- Diff:
nifi-nar-bundles/nifi-influxdb-bundle/nifi-influxdb-processors/src/main/java/org/apache/nifi/processors/influxdb/PutInfluxDB.java
---
@@ -78,18 +81,33 @@
.addValidator(StandardValidators.NON_EMPTY_VALIDATOR)
.build();
+ static final Relationship REL_SUCCESS = new
Relationship.Builder().name("success")
+ .description("Successful FlowFiles that are saved to InfluxDB
are routed to this relationship").build();
+
+ static final Relationship REL_FAILURE = new
Relationship.Builder().name("failure")
+ .description("FlowFiles were not saved to InfluxDB are routed
to this relationship").build();
+
+ static final Relationship REL_RETRY = new
Relationship.Builder().name("retry")
+ .description("FlowFiles were not saved to InfluxDB due to
retryable exception are routed to this relationship").build();
+
+ static final Relationship REL_MAX_SIZE_EXCEEDED = new
Relationship.Builder().name("failure-max-size")
--- End diff --
Something to consider here...
With PutHBaseRecord and (still pending merge) DeleteHBaseRow, I had a
similar situation. Users could easily chuck several hundred thousand HBase
operations at the processor all at once. So what was suggested to me, and I did
with both of them, was to break up the incoming flowfile into chunks and then
add a "retry.index" attribute to the flowfile if it failed. That way, users
could loop REL_RETRY to the processor and get everything ingested.
Though that might not apply in this case because InfluxDB doesn't have an
ID field that I know of. If you replay an event with the same timestamp, does
it overwrite or does it just add a new one?
---