> On 2012-03-12 17:18:41, Arvind Prabhakar wrote: > > Thanks for the patch Brock. > > > > 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: > > > > * Remove the FatalException interface > > * Update the runners to catch(Exception) once they have dealt with all the > > known exception types, log it and do a BACKOFF wait simulation. > > > > 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: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/3980/ > ----------------------------------------------------------- > > (Updated 2012-03-12 18:52:15) > > > Review request for Flume. > > > Summary > ------- > > Catches, logs, and sleeps when a general exception occurs. This is similar to > PollingSourceRunner. > > > This addresses bug FLUME-984. > https://issues.apache.org/jira/browse/FLUME-984 > > > Diffs > ----- > > flume-ng-core/src/main/java/org/apache/flume/SinkRunner.java ee75b54 > > flume-ng-core/src/main/java/org/apache/flume/source/PollableSourceRunner.java > 264fce1 > > Diff: https://reviews.apache.org/r/3980/diff > > > Testing > ------- > > All unit tests pass. > > > Thanks, > > Brock > >
