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

Juhani Connolly edited comment on FLUME-935 at 1/31/12 6:28 AM:
----------------------------------------------------------------

Gotcha on no 2, I will keep that in mind.

Pardon my initial mess of a comment, edited for clarity:
By ignoring InterruptedException in your try catch blocks for 
BasicTransactionSemantics take/put/commit/rollback, there are going to be 
responsiveness problems, since most transaction implementations are likely 
going to be using some kind of blocking mechanisms
                
      was (Author: juhanic):
    Gotcha on no 2, I will keep that in mind.

Another thing that came up is that you're right now you're just eating up all 
exceptions up in BasicTransactionSemantics. Many channels will be using some 
kind of blocking mechanisms, and altogether ignoring InterruptedExceptions 
among others, which is likely going to lead to responsiveness problems.
                  
> Create abstract implementations of basic channel/transaction semantics
> ----------------------------------------------------------------------
>
>                 Key: FLUME-935
>                 URL: https://issues.apache.org/jira/browse/FLUME-935
>             Project: Flume
>          Issue Type: Improvement
>          Components: Channel
>            Reporter: Peter Newcomb
>            Assignee: Peter Newcomb
>            Priority: Minor
>             Fix For: v1.1.0
>
>
> Correctly executing or checking the state transitions for channels and 
> transactions is nontrivial.  It would be helpful to have a correct 
> implementation of each that can be used either directly or as a reference 
> when creating new channels or clients of channels.
> Specifically, on the client side it would be nice to package the try { 
> begin() ... commit() } catch { rollback() } finally { close() } code, with 
> all the appropriate exception propagation and logging code, so that it need 
> not be repeated constantly.
> On the channel side, it'd be nice to have a packaged implementation of the 
> implied ThreadLocal semantics of the Transaction class, along with 
> Preconditions checking to make sure that clients follow the try { begin() ... 
> commit() } catch { rollback() } finally { close() } pattern.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to