Bugs item #573199, was opened at 2002-06-24 11:35
You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=376685&aid=573199&group_id=22866

Category: JBossServer
Group: v3.0 Rabbit Hole
Status: Closed
Resolution: Out of Date
Priority: 5
Submitted By: Daniel OConnor (docodan)
Assigned to: Dain Sundstrom (dsundstrom)
Summary: BMP beans: ejbStore not called post find

Initial Comment:
If a BMP bean executes a finder method, the container 
will first call ejbStores to synch beans with the 
datastore as necessary (per the EJB spec). However, if 
this happens, an ejbStore will not then be called at the 
end of transaction (in violation of the spec).

The simple test case attached is a bmp bean called by 
a client. The ejbStore method just writes out the data to 
System.out, so no configuration of data sources is 
necessary to run this. The final value of the variable (10) 
is never written to System.out.

Note that this bug was introduced in the 3.x series. It is 
not present as of JBoss 2.4.4.

A first glance at the source code from the nightly 
snapshot suggests that GlobalTxEntityMap might be 
the culprit, where:

   public void syncEntities(Transaction tx) 
      throws TransactionRolledbackException
   {
      Collection entities = null;
      synchronized (m_map)
      {
         entities = (Collection)m_map.remove(tx);
      }

removes the entities from the map whenever a synch is 
called. But I did not investigate this after my first 
impression.

----------------------------------------------------------------------

>Comment By: Bill Burke (patriot1burke)
Date: 2002-06-24 12:49

Message:
Logged In: YES 
user_id=176497

Dain, that code addition seems wrong to 
EntitySynchronizationInterceptor.  Once an entity bean 
transaction synchronization is registered with the TM, it is not 
removed from the TM until a transaction rollback or commit.

----------------------------------------------------------------------

Comment By: Dain Sundstrom (dsundstrom)
Date: 2002-06-24 11:51

Message:
Logged In: YES 
user_id=251431

This was fixed about two weeks ago in Branch_3_0 and HEAD.

The problem was in EntitySynchronizationInterceptor, which
was only adding synchronization on the way into a call and
not on the way out.  Now it does it in both directions.

----------------------------------------------------------------------

You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=376685&aid=573199&group_id=22866


-------------------------------------------------------
Sponsored by:
ThinkGeek at http://www.ThinkGeek.com/
_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to