[
https://issues.apache.org/jira/browse/NIFI-10780?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Nathan Gough updated NIFI-10780:
--------------------------------
Fix Version/s: 1.19.0
Resolution: Fixed
Status: Resolved (was: Patch Available)
> Avoid Dropping Events in Listen Processors for Full Queues
> ----------------------------------------------------------
>
> Key: NIFI-10780
> URL: https://issues.apache.org/jira/browse/NIFI-10780
> Project: Apache NiFi
> Issue Type: Improvement
> Components: Extensions
> Reporter: David Handermann
> Assignee: David Handermann
> Priority: Major
> Fix For: 1.19.0
>
> Time Spent: 1h
> Remaining Estimate: 0h
>
> Multiple listening Processors, including {{ListenSyslog}} and
> {{{}ListenTCP{}}}, depend on the {{nifi-event-transport}} module and the
> {{NettyEventServer}} to receiving incoming messages. These components use the
> {{ByteArrayMessageChannelHandler}} to add parsed messages to a configured
> queue for subsequent processing when the framework triggers the Processor.
> {{ListenSyslog}} and {{ListenTCP}} use a {{LinkedBlockingQueue}} with a
> configurable maximum size as an internal buffer, and
> {{LinkedBlockingQueue.add()}} throws an {{IllegalStateException}} if the
> caller attempts to add an element that exceeds the maximum queue size. As a
> result of this approach, these Processors can drop messages when the maximum
> queue size is too low.
> The supporting {{ByteArrayMessageChannelHandler}} should be improved to call
> a method other than {{LinkedBlockingQueue.add()}} to avoid dropping messages
> while waiting for the Processor to handle queued events.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)