Bugs item #1024653, was opened at 2004-09-08 21:21
Message generated for change (Comment added) made by pedrosalazar
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=376685&aid=1024653&group_id=22866

Category: JBossServer
Group: v3.2
Status: Open
Resolution: None
Priority: 5
Submitted By: Pedro Salazar (pedrosalazar)
Assigned to: Alexey Loubyansky (loubyansky)
Summary: cache invalidation RO/RW doesn't work

Initial Comment:
--------------------
INTRODUTION
--------------------

I'm trying to invalidate read-only ejbs  by updating
the read-write ejbs. Following teh design patterns
described on jboss clustering documentation (section
8), the invalidation doesn't work.

----------------------
System information
-----------------------

- Linux RedHat 9.0 (kernel 2.4.26)
- IBM JVM 1.4.2 / SUN JVM 1.4.2
- JBOSS
[ServerInfo] Java version: 1.4.2,IBM Corporation
[ServerInfo] Java VM: Classic VM 1.4.2,IBM Corporation
[ServerInfo] OS-System: Linux 2.4.26,x86

JBoss (MX MicroKernel) [3.2.5 (build:
CVSTag=JBoss_3_2_5 date=200406251954)] Started in 51s:642ms

-----------------------
INSTALLATION
-----------------------

Server configuration
---------------------------
- create a datasource connection with the JNDI name
"testeDS". A sample exist in src/etc/teste-ds.xml.

Build process
------------------
- define the path to jboss in the file '.global.properties'
- by default it's prepared to be mapped to Oracle9i
(see src/etc/ejb/invalidation/jbosscmp-jdbc.xml)
- run "ant" (default target)

Deploy
---------
- Copy of the EAR created in dist/test.ear to jboss.


-----------
STEPS 
-----------

The main ideia is update the RW entity bean, and we
must see the RO entity beans being reloaded in jboss
(passivate/load). What happens is that it never
happens, and the value updated in RW is not synchonized
with the RO.

Test
-------
- verify the src/etc/jndi.properties to map to the
right server.
- run "ant run-ejb"

Looking to the logs (server.log) it will be printed
V� o log (server.log)


Pedro Salazar.

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

>Comment By: Pedro Salazar (pedrosalazar)
Date: 2004-09-09 10:36

Message:
Logged In: YES 
user_id=862015

loubyansky,

My test case do that. 

It searchs for a specific entity instance, invalidates, a
searchs it again. So it should be reloaded on demand.

1- find(instance)
2- invalidate(instance)
3- find(instance) (again) <- should be reloaded

Note: the invalidate operation changes the instance's value.
So, the step 3) should display the new value. But the RO
isn't reloaded.

Any ideas?

Regards,
Pedro Salazar.

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

Comment By: Alexey Loubyansky (loubyansky)
Date: 2004-09-08 21:50

Message:
Logged In: YES 
user_id=543482

In the current implementation when RO instance is
invalidated, it is just evicted from the cache. ejbPassivate
is not called on it and it is reloaded on demand, i.e. when
someone accesses it, not immediately after the invalidation.

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

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


-------------------------------------------------------
This SF.Net email is sponsored by BEA Weblogic Workshop
FREE Java Enterprise J2EE developer tools!
Get your free copy of BEA WebLogic Workshop 8.1 today.
http://ads.osdn.com/?ad_id=5047&alloc_id=10808&op=click
_______________________________________________
JBoss-Development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to