[ 
https://issues.apache.org/jira/browse/NIFI-5805?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16680704#comment-16680704
 ] 

ASF GitHub Bot commented on NIFI-5805:
--------------------------------------

Github user ijokarumawak commented on a diff in the pull request:

    https://github.com/apache/nifi/pull/3160#discussion_r232116819
  
    --- Diff: 
nifi-nar-bundles/nifi-standard-services/nifi-record-serialization-services-bundle/nifi-record-serialization-services/src/main/java/org/apache/nifi/avro/AvroRecordSetWriter.java
 ---
    @@ -68,16 +76,40 @@
             .required(true)
             .build();
     
    +    static final PropertyDescriptor ENCODER_POOL_SIZE = new Builder()
    --- End diff --
    
    Since this configuration is performance related and depends on environment, 
I'd suggest supporting variable registry EL.


> Avro Record Writer service creates byte buffer for every Writer created
> -----------------------------------------------------------------------
>
>                 Key: NIFI-5805
>                 URL: https://issues.apache.org/jira/browse/NIFI-5805
>             Project: Apache NiFi
>          Issue Type: Bug
>            Reporter: Mark Payne
>            Assignee: Mark Payne
>            Priority: Major
>
> When we use the Avro RecordSet Writer, and do not embed the schema, the 
> Writer uses the Avro BinaryEncoder object to serialize the data. This object 
> can be initialized, but instead we create a new one for each writer. This 
> results in creating a new 64 KB byte[] each time. When we are writing many 
> records to a given FlowFile, this is not a big deal. However, when used in 
> PublishKafkaRecord or similar processors, where a new writer must be created 
> for every Record, this can have a very significant performance impact.
> An improvement would be to have the user configure the maximum number of 
> BinaryEncoder objects to pool and then use a simple pooling mechanism to 
> reuse these objects.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to