[ https://issues.apache.org/jira/browse/STORM-969?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aaron Dossett resolved STORM-969. --------------------------------- Resolution: Fixed > HDFS Bolt can end up in an unrecoverable state > ---------------------------------------------- > > Key: STORM-969 > URL: https://issues.apache.org/jira/browse/STORM-969 > Project: Apache Storm > Issue Type: Improvement > Components: storm-hdfs > Reporter: Aaron Dossett > Assignee: Aaron Dossett > > The body of the HDFSBolt.execute() method is essentially one try-catch block. > The catch block reports the error and fails the current tuple. In some > cases the bolt's FSDataOutputStream object (named 'out') is in an > unrecoverable state and no subsequent calls to execute() can succeed. > To produce this scenario: > - process some tuples through HDFS bolt > - put the underlying HDFS system into safemode > - process some more tuples and receive a correct ClosedChannelException > - take the underlying HDFS system out of safemode > - subsequent tuples continue to fail with the same exception > The three fundamental operations that execute takes (writing, sync'ing, > rotating) need to be isolated so that errors from each are specifically > handled. -- This message was sent by Atlassian JIRA (v6.3.4#6332)