ASF GitHub Bot commented on NIFI-4838:

Github user MikeThomsen commented on the issue:

    @pvillard31 I found that a catch block was suppressing a critical problem 
with how I was handling the input flowfile. When I'd call `session.commit()` 
after a block of results were written to a flowfile, it would throw an 
exception because the input flowfile had not been transferred yet.
    So what I am going to do is redo this to make it configurable again. With 
the default behavior being only one single commit. Then users can choose a 
"streaming mode" where at the the first sign of success it transfers the input 
flowfile to REL_ORIGINAL. Then if an error happens, it would write a new 
flowfile with the same attributes and content as the original and send that 
cloned copy to the failure relationship. It may not be perfect, but I don't 
think NiFi has a way to do a partial commit which is what I'd need to make it 
work as-is.

> Make GetMongo support multiple commits and give some progress indication
> ------------------------------------------------------------------------
>                 Key: NIFI-4838
>                 URL: https://issues.apache.org/jira/browse/NIFI-4838
>             Project: Apache NiFi
>          Issue Type: Improvement
>            Reporter: Mike Thomsen
>            Assignee: Mike Thomsen
>            Priority: Major
> It shouldn't wait until the end to do a commit() call because the effect is 
> that GetMongo looks like it has hung to a user who is pulling a very large 
> data set.
> It should also have an option for running a count query to get the current 
> approximate count of documents that would match the query and append an 
> attribute that indicates where a flowfile stands in the total result count. 
> Ex:
> query.progress.point.start = 2500
> query.progress.point.end = 5000
> query.count.estimate = 17,568,231

This message was sent by Atlassian JIRA

Reply via email to