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

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


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

(Updated 2011-09-20 20:54:45.230862)


Review request for jmhsieh.


Changes
-------

It looks like the Thrift source is converting an Interrupt exception to 
IOException. Due to that, TestDiskFailoverBehavior hangs with as we restart the 
source after IO exception. I think we should bail out instead of retrying in 
such cases.
With the following change  is passing 
+            if (eI.getCause() instanceof InterruptedException)
+              throw eI;

Ideally, Thrift source needs to throw the Interrupted exception directly. I 
will go ahead and log a separate Jira for the.  


Summary
-------

If the source or sink throws an exception, close, reopen and retry it. This way 
the flow can continue after minor/recoverable errors.


This addresses bug FLUME-762.
    https://issues.apache.org/jira/browse/FLUME-762


Diffs (updated)
-----

  flume-core/src/main/java/com/cloudera/flume/core/connector/DirectDriver.java 
0466394 
  flume-core/src/test/java/com/cloudera/flume/agent/TestFlumeNode.java 9d9e1a5 
  
flume-core/src/test/java/com/cloudera/flume/agent/diskfailover/TestDiskFailoverDeco.java
 a7e2d78 
  
flume-core/src/test/java/com/cloudera/flume/core/connector/TestDirectDriverExp.java
 PRE-CREATION 

Diff: https://reviews.apache.org/r/1739/diff


Testing
-------


Thanks,

Prasad



> DirectDriver should reopen the source/sink if the append or next throws an 
> exception
> ------------------------------------------------------------------------------------
>
>                 Key: FLUME-762
>                 URL: https://issues.apache.org/jira/browse/FLUME-762
>             Project: Flume
>          Issue Type: Improvement
>          Components: Node
>            Reporter: Prasad Mujumdar
>            Assignee: Prasad Mujumdar
>         Attachments: flume-762.patch
>
>
> Currently, if source or sink throws an exception, the driver bails out 
> resulting the everything to shut down. Alternately, we can try to close and 
> reopen the source or sink, and then attempt to continue. This way we can 
> avoid blocking the flow. If the reopen fails, then it can bail out.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to