Github user martin-mucha commented on a diff in the pull request:

    https://github.com/apache/nifi/pull/2425#discussion_r166457681
  
    --- Diff: 
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ValidateRecord.java
 ---
    @@ -242,11 +279,12 @@ public void onTrigger(final ProcessContext context, 
final ProcessSession session
             final boolean allowExtraFields = 
context.getProperty(ALLOW_EXTRA_FIELDS).asBoolean();
             final boolean strictTypeChecking = 
context.getProperty(STRICT_TYPE_CHECKING).asBoolean();
     
    -        RecordSetWriter validWriter = null;
    -        RecordSetWriter invalidWriter = null;
             FlowFile validFlowFile = null;
             FlowFile invalidFlowFile = null;
     
    +        final List<Record> validRecords = new LinkedList<>();
    --- End diff --
    
    Understood, but one question. I did all this refactoring to get rid of 
'surprising' complexity of code. Now, if I do "writer.write(record);" given 
record won't be held in heap before completeFlowFile is called? Where is the 
FlowFile stored until 'completed'? If it's held outside of heap, then all this 
refactoring is invalid, indeed. If it's also in heap ...


---

Reply via email to