[
https://issues.apache.org/jira/browse/FLUME-1321?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13633475#comment-13633475
]
Mike Percy commented on FLUME-1321:
-----------------------------------
Roshan I was thinking about this one recently... one example of where we must
rollback on close is File channel... if not then a replayed WAL would be
different than the FlumeEventQueue because close() is a no-op in file channel
In fact right now the semantics are a bit wacky and in order to support this
properly we have to evaluate how the other channels need to change to ensure
correctness after this change.
Maybe part of it would be requiring channels to implement rollback on close
themselves, not sure if there are benefits to doing that over just doing it in
the base class.
> BasicTransactionSemantics should never throw from close()
> ---------------------------------------------------------
>
> Key: FLUME-1321
> URL: https://issues.apache.org/jira/browse/FLUME-1321
> Project: Flume
> Issue Type: Bug
> Affects Versions: v1.1.0
> Reporter: Mike Percy
> Assignee: Roshan Naik
> Fix For: v1.4.0
>
> Attachments: FLUME-1321.2.patch, FLUME-1321.patch
>
>
> Currently, BasicTransactionSemantics can throw from close(). This means that
> exceptions will be clobbered in cases where unexpected exceptions are thrown,
> since close() is idiomatically called in a finally block.
--
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