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

Y Wikander edited comment on NIFI-4169 at 8/21/17 2:43 AM:
-----------------------------------------------------------

Patch submittal for this issue: 
[^0002-websocket-PutWebSocket-enhance-broadcast-support.patch]

Suggested checkin note:
{noformat}
PutWebsocket; enhance broadcast support
- Add relationship 'session unknown'.
  Allows flowfiles where the session is no longer valid to be
   dropped vs. needing to analyze the attributes of a
   'failure' relationship.
  Note: Available for use by non-broadcast flowfiles.
- Change broadcast success behavior; such that if a flowfile
   cannot be sent to any destination the flowfile
   will transfer to relationship 'failure'.
- Change broadcast failure behavior; such that if a flowfile
   can be sent to at least one destination the flowfile will
   transfer to relationship 'success'.
  For each failed broadcast destination, a new flowfile is
   cloned (via a fowfile FORK) with a relationship of
   'failure' (so that it can be routed back into the
   processor).
   Note that on later 'success' or 'session unknown' results, the
   flowfile is dropped (via a terminate relationship) because
   sending it on would cause a duplicate (since we're a clone).
- Add attribute 'websocket.broadcast' which is used to track
   failed broadcast flowfiles when they are reprocessed by this
   processor. 
- Change attribute websocket.local.address and
   websocket.remote.address values under broadcast success
   condition; to contain a comma separated list of addresses
   when the flowfile was successfully sent.
- Update documentation with information on how to use
   broadcast functionality.
{noformat}




was (Author: ywik):
Patch submittal for this issue: 
[^0002-websocket-PutWebSocket-enhance-broadcast-support.patch]


> PutWebSocket processor with blank WebSocket session id attribute cannot 
> transfer to failure queue
> -------------------------------------------------------------------------------------------------
>
>                 Key: NIFI-4169
>                 URL: https://issues.apache.org/jira/browse/NIFI-4169
>             Project: Apache NiFi
>          Issue Type: Improvement
>          Components: Extensions
>    Affects Versions: 1.3.0
>            Reporter: Y Wikander
>            Priority: Critical
>              Labels: patch
>             Fix For: 1.3.0
>
>         Attachments: 
> 0001-websocket-when-sendMessage-fails-under-blank-session.patch, 
> 0002-websocket-PutWebSocket-enhance-broadcast-support.patch
>
>
> If a PutWebSocket processor is setup with a blank WebSocket session id 
> attribute (see NIFI-3318; Send message from PutWebSocket to all connected 
> clients) and it is not connected to a websocket server it will log the 
> failure and mark the flowfile with Success (rather than Failure) -- and the 
> data is effectively lost.
> If there are multiple connected clients, and some succeed and others fail, 
> routing Failure back into the PutWebSocket could result in duplicate data to 
> some clients.
> Other NiFi processors seem to err on the side of "at least once".



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to