commit option B does not work with CMP 1.x
------------------------------------------

         Key: JBAS-1386
         URL: http://jira.jboss.com/jira/browse/JBAS-1386
     Project: JBoss Application Server
        Type: Bug
  Components: CMP service  
    Versions: JBossAS-4.0.1 Final    
 Environment: jdk 1.4.2 on linux
    Reporter: Peter Doornbosch
 Assigned to: Scott M Stark 


When accessing a CMP 1.x entity bean with the commit option set to B, and the 
bean is already loaded (by a previous invocation), the bean is not loaded again 
from the database (as it should with commit option B). This can be easily 
verified by deploying such a bean and enabling sql logging. 

The cause of this bug is in the following method from JDBCCMP1xFieldBridge:

   public void resetPersistenceContext(EntityEnterpriseContext ctx)
   {
      if(isReadTimedOut(ctx))
      {
         JDBCContext jdbcCtx = (JDBCContext)ctx.getPersistenceContext();
         jdbcCtx.setFieldState(jdbcContextIndex, new FieldState(jdbcCtx));
      }
   }

Assigning a 'new FieldState(jdbcCtx)' to the jdbcCtx effectively does nothing, 
because JDBCCMP1xFieldBridge.FieldState delegates to EntityState and the 
EntityState is not affected by this call.  Hence, after this method, the state 
of the field is still "loaded", and thus this field is not part of the 
load-iterator created by JDBCEntityBridge.

I think the fix is rather easy: just reset the field flags explicitely (as it 
is done in the cmp 2.x case), e.g.

jdbcCtx.getEntityState().resetFlags(tableIndex);



-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.jboss.com/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira



-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag-&-drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
_______________________________________________
JBoss-Development mailing list
JBoss-Development@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to