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?


---

Reply via email to