Anonymous | Login | Signup for a new account | 12-17-2024 10:47 PST |
Main | My View | View Issues | Change Log | Docs |
Viewing Issue Advanced Details [ Jump to Notes ] | [ View Simple ] [ Issue History ] [ Print ] | ||||||||
ID | Category | Severity | Reproducibility | Date Submitted | Last Update | ||||
0001723 | [Resin] | minor | always | 05-01-07 09:06 | 05-15-07 13:28 | ||||
Reporter | ferg | View Status | public | ||||||
Assigned To | ferg | ||||||||
Priority | normal | Resolution | fixed | Platform | |||||
Status | closed | OS | |||||||
Projection | none | OS Version | |||||||
ETA | none | Fixed in Version | 3.1.1 | Product Version | |||||
Product Build | |||||||||
Summary | 0001723: JSP: ResourceBundle caching | ||||||||
Description |
(rep by Fred Douthit) We are having what looks like resource contention for resource bundles. It appears that we are using the resin implementation of bean:message. What I am seeing appears to be resource contention load bundles from the file system which should have been cached. See the section Relevant Information 1st, but also, SERVER-WIDE STACK DUMP, for a more complete thread dump. What I am looking for is an idea why this is happening but more importantly, how I can resolve it. Thanks! Fred Relevant information · We are using resin-pro-3.0.14. · Performance testing found MANY threads in the application appear to block on: java.lang.Class.forName0 (native method) - see stack trace attached. · The method is native. It is possible that there is a critical section which is causing the code to single thread through this code. This behavior appears to be intrinsic to Sun's implementation. · The underlying issue is that the code reads and parses ApplicationResources.properties and MoreApplicationResources.properties again and again. · While the code is designed to cache the file contents it doesn't. · These files are loaded from the file system. · These files are referenced from between 0 and more than 60 times per jsp page. · A typical reference looks like the following: <bean:message key="custgroup.condition.label.abandcart"/> · They contain name value pairs which look like the following: tools.tax.state=State Fraction of stack trace [1] java.lang.Class.forName0 (native method) [2] java.lang.Class.forName (Class.java:242) [3] com.caucho.jsp.BundleManager.getBaseBundle (BundleManager.java:202) [4] com.caucho.jsp.BundleManager.getBundle (BundleManager.java:144) [5] com.caucho.jsp.PageContextImpl.getBundle (PageContextImpl.java:1,164) [6] com.caucho.jsp.PageContextImpl.getLocalizedMessage (PageContextImpl.java:1,133) [7] _jsp._nav._TopNav__jsp._jspService (TopNav.jsp:46) |
||||||||
Steps To Reproduce | |||||||||
Additional Information | |||||||||
Attached Files | |||||||||
|
Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
28 total queries executed. 25 unique queries executed. |