User: d_jencks
  Date: 02/02/12 18:35:08

  Modified:    src/main/org/jboss/ejb/plugins/cmp/jdbc
                        JDBCRemoveEntityCommand.java
  Log:
  Made GlobalTxEntityMap only contain read-write dirty entities, to avoid calling 
ejbStore unnecessarily. Moved beforeCompletion sync code to GlobalTxEntityMap. Fix to 
bug 512826. Involves EntityContainer, GlobalTxEntityMap, TxEntityMap, 
plugins/EntitySynchronizationInterceptor, and 
plugins/cmp/jdbc/JDBCRemoveEntityCommand.java
  
  Revision  Changes    Path
  1.14      +11 -3     
jboss/src/main/org/jboss/ejb/plugins/cmp/jdbc/JDBCRemoveEntityCommand.java
  
  Index: JDBCRemoveEntityCommand.java
  ===================================================================
  RCS file: 
/cvsroot/jboss/jboss/src/main/org/jboss/ejb/plugins/cmp/jdbc/JDBCRemoveEntityCommand.java,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- JDBCRemoveEntityCommand.java      15 Jan 2002 22:24:25 -0000      1.13
  +++ JDBCRemoveEntityCommand.java      13 Feb 2002 02:35:08 -0000      1.14
  @@ -17,6 +17,7 @@
   import javax.ejb.EJBLocalObject;
   import javax.ejb.RemoveException;
   import javax.sql.DataSource;
  +import javax.transaction.TransactionRolledbackException;
   import org.jboss.ejb.EntityEnterpriseContext;
   import org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCCMRFieldBridge;
   import org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCEntityBridge;
  @@ -30,7 +31,7 @@
    * @author <a href="mailto:[EMAIL PROTECTED]";>Marc Fleury</a>
    * @author <a href="mailto:[EMAIL PROTECTED]";>Joe Shevland</a>
    * @author <a href="mailto:[EMAIL PROTECTED]";>Justin Forder</a>
  - * @version $Revision: 1.13 $
  + * @version $Revision: 1.14 $
    */
   public class JDBCRemoveEntityCommand {
      
  @@ -67,8 +68,15 @@
   
         // update the related entities (stores the removal from relationships)
         if(!entity.getCMRFields().isEmpty()) {
  -         manager.getContainer().synchronizeEntitiesWithinTransaction(
  -               context.getTransaction());
  +      try
  +      {
  +         manager.getContainer().synchronizeEntitiesWithinTransaction(
  +            context.getTransaction());
  +      }
  +      catch (TransactionRolledbackException tre)
  +      {
  +         throw new RemoveException("Transaction rolled back, cannot remove in tx");
  +      }
         }
         
         Connection con = null;
  
  
  

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to