[jboss-jira] [JBoss JIRA] Assigned: (EJBTHREE-1750) Cluster node shutdown thats allow ongoing transactions to finish gracefully

Galder Zamarreno (JIRA) jira-events at lists.jboss.org
Tue Mar 3 14:33:39 EST 2009


     [ https://jira.jboss.org/jira/browse/EJBTHREE-1750?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Galder Zamarreno reassigned EJBTHREE-1750:
------------------------------------------

    Assignee: Paul Ferraro


> Cluster node shutdown thats allow ongoing transactions to finish gracefully
> ---------------------------------------------------------------------------
>
>                 Key: EJBTHREE-1750
>                 URL: https://jira.jboss.org/jira/browse/EJBTHREE-1750
>             Project: EJB 3.0
>          Issue Type: Feature Request
>          Components: Clustering
>            Reporter: Galder Zamarreno
>            Assignee: Paul Ferraro
>
> Extend EJBTHREE-1116 so that in-flight transactions, specially those initiated remotely, are allowed to 
> finish and no new transactions are allowed.
> EJBTHREE-1116 just blocks the shutdown until in-flight *invocations* complete, not until *transactions* 
> complete.  So a tx that's initiated on the client side that spans multiple invocations can see the node 
> disappear in the middle.  Our clustered EJB proxies don't allow failover in the middle of a transaction, 
> so that means the client sees a failure. 
> EJBTHREE-1116, consider the following session bean method:
> @TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
> public void addUser(User user) {
>   em.persist(user);
> }
> If the node is shutdown after a client has called addUser(), the transaction will indeed complete before 
> the shutdown commences, but only as a side effect of waiting for the invocation to complete - the 
> BlockContainerShutdownInterceptor sits in the front of the interceptor chain.  Subsequent requests to 
> addUser(...) (i.e. new transactions) will fail once shutdown is initiated.
> EJBTHREE-1116 doesn't cover transactions initiated from the client - nor invocations from one ejb to another 
> (e.g. if addUser() tries to invoke a method on another ejb after shutdown is initiated).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list