Mark Payne created NIFI-9364:
--------------------------------
Summary: ExecuteStateless performance suffers if using "Content
Storage Strategy" of "Store Content on Disk"
Key: NIFI-9364
URL: https://issues.apache.org/jira/browse/NIFI-9364
Project: Apache NiFi
Issue Type: Bug
Components: Extensions
Affects Versions: 1.15.0
Reporter: Mark Payne
Assignee: Mark Payne
When I tested performance of ExecuteStateless storing content on heap,
performance was great. But I changed to store content on disk, expecting
performance to drop some. But I saw a HUGE performance drop - about an order of
magnitude. It appears to be because when copying the FlowFile content into the
processor's Content Repository, the {{ContentOutputStream}} that is used to
write content to disk does not override the parent {{FilterOutputStream's
write(byte[], int offset, int len)}} method. Instead, it just inherit's the
parent's implementation. The parent implementation performs horribly, calling
{{void write(int b)}} for each byte in the given buffer. which means we write
each byte to the underlying FileOutputStream as an individual operation.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)