[
https://issues.apache.org/jira/browse/FLUME-1593?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13459199#comment-13459199
]
Hari Shreedharan commented on FLUME-1593:
-----------------------------------------
I agree that the logic works - the only reason I am not too keen on putting
this in, as is, is because the channel is already complex as it is(with the two
different flows to support the old logic etc).
I feel that we can achieve the same thing using the method above (I edited it
to add the fact that the buffer is passed in as well). We can still log the
exception, but we throw it out of the method only if the retry fails n or more
times. This keeps the logic compact and still not repeating a bunch of times -
the logic is now in the same method.
> FileChannel race condition when log file rolls
> ----------------------------------------------
>
> Key: FLUME-1593
> URL: https://issues.apache.org/jira/browse/FLUME-1593
> Project: Flume
> Issue Type: Improvement
> Components: Channel
> Affects Versions: v1.3.0
> Reporter: Brock Noland
> Assignee: Brock Noland
> Priority: Minor
> Attachments: FLUME-1593-0.patch
>
>
> There is a non-harmful race condition when we roll a log. One thread can call
> logFiles.get(logFileIndex).{take,put,etc} while another is closing that log
> writer.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira