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

[email protected] commented on FLUME-984:
-----------------------------------------------------



bq.  On 2012-03-12 17:18:41, Arvind Prabhakar wrote:
bq.  > Thanks for the patch Brock. 
bq.  > 
bq.  > I am not in favor of an interface to be implemented by the exception to 
signal any specific cause. The reason being that it will be hard and error 
prone for us to bring this into compliance specially for components developed 
outside of Flume. Any explicit contract that cannot be enforced is likely to 
become a cause of headaches in the field. Hence, my suggestion is to do the 
following:
bq.  > 
bq.  > * Remove the FatalException interface
bq.  > * Update the runners to catch(Exception) once they have dealt with all 
the known exception types, log it and do a BACKOFF wait simulation.
bq.  > 
bq.  > This will ensure that the runners do not bail out if an exception occurs 
and keep retrying. This may be futile in some cases but would make sense in 
other cases as once a process/thread exits there is no restoring it without 
more complex logic up top or via manual intervention.

FatalException is removed.

I took the "Update the Runners" comment to mean that both SinkRunner and 
PollableSourceRunner should have the logic for dealing with exceptions. 
Hopefully I interpreted that correct. I think that both these runners having 
the same logic makes sense and it will also obsolete FLUME-982.


- Brock


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/3980/#review5837
-----------------------------------------------------------


On 2012-03-12 18:52:15, Brock Noland wrote:
bq.  
bq.  -----------------------------------------------------------
bq.  This is an automatically generated e-mail. To reply, visit:
bq.  https://reviews.apache.org/r/3980/
bq.  -----------------------------------------------------------
bq.  
bq.  (Updated 2012-03-12 18:52:15)
bq.  
bq.  
bq.  Review request for Flume.
bq.  
bq.  
bq.  Summary
bq.  -------
bq.  
bq.  Catches, logs, and sleeps when a general exception occurs. This is similar 
to PollingSourceRunner.
bq.  
bq.  
bq.  This addresses bug FLUME-984.
bq.      https://issues.apache.org/jira/browse/FLUME-984
bq.  
bq.  
bq.  Diffs
bq.  -----
bq.  
bq.    flume-ng-core/src/main/java/org/apache/flume/SinkRunner.java ee75b54 
bq.    
flume-ng-core/src/main/java/org/apache/flume/source/PollableSourceRunner.java 
264fce1 
bq.  
bq.  Diff: https://reviews.apache.org/r/3980/diff
bq.  
bq.  
bq.  Testing
bq.  -------
bq.  
bq.  All unit tests pass.
bq.  
bq.  
bq.  Thanks,
bq.  
bq.  Brock
bq.  
bq.


                
> SinkRunner should catch unhanded exceptions and log them like 
> PollingSourceRunner
> ---------------------------------------------------------------------------------
>
>                 Key: FLUME-984
>                 URL: https://issues.apache.org/jira/browse/FLUME-984
>             Project: Flume
>          Issue Type: Improvement
>          Components: Sinks+Sources
>    Affects Versions: v1.0.0
>            Reporter: Brock Noland
>            Assignee: Brock Noland
>         Attachments: FLUME-984-0.patch, FLUME-984-1.patch, FLUME-984-2.patch
>
>
> If a Sink throws any exception but EventDeliveryException the sink will die. 
> We should catch the exception, perhaps backoff a bit, and retry like 
> PollingSourceRunner.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to