I have an application which runs quite fast.  Recently I discovered that under 
heavy load I get Deadlock exceptions raised from JBOSS (3.2.3).   I noticed 
that the Deadlock exception occurs during a READ-ONLY operation and decided to 
mark all my get* is* has* methods with read-only attribute.  For some reason, 
this has changed a single SELECT statement into many in the form of SELECT ... 
WHERE (ID=?) OR (ID=?) OR (ID=?) OR (ID=?) OR (ID=?) OR (ID=?) ....  Because of 
this, a page that used to load in under  second now took over 8 seconds to load.

I removed the read-only method specifications and the number of SELECT 
statements returned back to normal and performance increased.  

Can someone please explain why would read-only method annotation increase the 
number of SELECT statements to such an extent?

Thanks.
-AP_

View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3869987#3869987

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3869987


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
JBoss-user mailing list
JBoss-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to