[jira] Assigned: (COCOON-2259) Memory leak in PoolableProxyHandler
[ https://issues.apache.org/jira/browse/COCOON-2259?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jasha Joachimsthal reassigned COCOON-2259: -- Assignee: Jasha Joachimsthal Memory leak in PoolableProxyHandler --- Key: COCOON-2259 URL: https://issues.apache.org/jira/browse/COCOON-2259 Project: Cocoon Issue Type: Bug Components: * Cocoon Core Affects Versions: 2.2, 2.2-dev (Current SVN) Reporter: Alexander Daniel Assignee: Jasha Joachimsthal Attachments: patchForIssue2259.txt I reproduced the problem with following pipeline and by adding log output to PoolableProxyHandler [1] map:pipeline id=cocoonTest type=noncaching map:match pattern=cocoonProtocol map:generate src=cocoon://sub/ map:serialize type=xhtml/ /map:match map:match pattern=sub map:generate src=welcome/welcome.xml/ map:transform src=welcome/welcome.xslt/ map:serialize type=xhtml/ /map:match /map:pipeline Changing the line this.attributeName = PoolableProxyHandler.class.getName() + '/' + this.handler.hashCode(); to this.attributeName = PoolableProxyHandler.class.getName() + '/' + this.hashCode(); fixes the memory leak. Why? The PoolableFactoryBean [2] handler is a singleton for every pipeline component, i.e. one instance for noncaching pipeline, one instance for xalan transformer, ... Therefore the attributeName is the same for every component of the same type but Spring requires an unique value for the destruction callback handler. In the example sitemap above two noncaching pipeline instances are needed for processing the request. Both call registerDestructionCallback with the same attributeName. Because the attributeName is the same the callback is only called once and the other component remains in ThreadLocal. [1] http://svn.apache.org/repos/asf/cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-impl/src/main/java/org/apache/cocoon/core/container/spring/avalon/PoolableProxyHandler.java [2] http://svn.apache.org/repos/asf/cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-impl/src/main/java/org/apache/cocoon/core/container/spring/avalon/PoolableFactoryBean.java -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Closed: (COCOON-2259) Memory leak in PoolableProxyHandler
[ https://issues.apache.org/jira/browse/COCOON-2259?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jasha Joachimsthal closed COCOON-2259. -- Fix Version/s: 2.2-dev (Current SVN) Resolution: Fixed Applied the patch. Thanks for submitting it. Memory leak in PoolableProxyHandler --- Key: COCOON-2259 URL: https://issues.apache.org/jira/browse/COCOON-2259 Project: Cocoon Issue Type: Bug Components: * Cocoon Core Affects Versions: 2.2, 2.2-dev (Current SVN) Reporter: Alexander Daniel Assignee: Jasha Joachimsthal Fix For: 2.2-dev (Current SVN) Attachments: patchForIssue2259.txt I reproduced the problem with following pipeline and by adding log output to PoolableProxyHandler [1] map:pipeline id=cocoonTest type=noncaching map:match pattern=cocoonProtocol map:generate src=cocoon://sub/ map:serialize type=xhtml/ /map:match map:match pattern=sub map:generate src=welcome/welcome.xml/ map:transform src=welcome/welcome.xslt/ map:serialize type=xhtml/ /map:match /map:pipeline Changing the line this.attributeName = PoolableProxyHandler.class.getName() + '/' + this.handler.hashCode(); to this.attributeName = PoolableProxyHandler.class.getName() + '/' + this.hashCode(); fixes the memory leak. Why? The PoolableFactoryBean [2] handler is a singleton for every pipeline component, i.e. one instance for noncaching pipeline, one instance for xalan transformer, ... Therefore the attributeName is the same for every component of the same type but Spring requires an unique value for the destruction callback handler. In the example sitemap above two noncaching pipeline instances are needed for processing the request. Both call registerDestructionCallback with the same attributeName. Because the attributeName is the same the callback is only called once and the other component remains in ThreadLocal. [1] http://svn.apache.org/repos/asf/cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-impl/src/main/java/org/apache/cocoon/core/container/spring/avalon/PoolableProxyHandler.java [2] http://svn.apache.org/repos/asf/cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-impl/src/main/java/org/apache/cocoon/core/container/spring/avalon/PoolableFactoryBean.java -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
RE: [jira] Closed: (COCOON-2259) Memory leak in PoolableProxyHandler
One question: Yesterday I downloaded the sources from cocoon/tags/cocoon-2.2/cocoon-sitemap-impl/cocoon-sitemap/impl-1.0.0. Next I made the necessary code change and installed the artifact in my local maven repo. But this does not ensure unfortunately that my colleague(s) use the same patched artifact. What would be the best way forward for me in this case since you only applied the patch to trunk which is a snapshot version. Cheers, Robby
[jira] Subscription: COCOON-open-with-patch
Issue Subscription Filter: COCOON-open-with-patch (108 issues) Subscriber: cocoon Key Summary COCOON-2290 CLONE - Add a read method to the SitemapComponentTestCase https://issues.apache.org/jira/browse/COCOON-2290 COCOON-2288 Allow usage of SLF4J for traces https://issues.apache.org/jira/browse/COCOON-2288 COCOON-2281 Communication tools that we use link to dev mailing list archive comes out at user mailing list archive https://issues.apache.org/jira/browse/COCOON-2281 COCOON-2268 To extend the image reader we need to change the visibility to the parameter of the ImageReader https://issues.apache.org/jira/browse/COCOON-2268 COCOON-2262 container.refresh() is called before embeddedServlet.init() https://issues.apache.org/jira/browse/COCOON-2262 COCOON-2260 wrong parent version in pom of cocoon-flowscript-impl https://issues.apache.org/jira/browse/COCOON-2260 COCOON-2249 XHTMLSerializer uses entity references quot; and apos; which cause JavaScript parse errors https://issues.apache.org/jira/browse/COCOON-2249 COCOON-2246 HttpRequest should handle encoding in getParameter and getParameterValues in the same way https://issues.apache.org/jira/browse/COCOON-2246 COCOON-2233 Update archetypes to current trunk artifact versions https://issues.apache.org/jira/browse/COCOON-2233 COCOON- Add SaxParser configuration properties https://issues.apache.org/jira/browse/COCOON- COCOON-2216 IncludeCacheManager can not perfom parallel includes https://issues.apache.org/jira/browse/COCOON-2216 COCOON-2212 jx:attribute does not check name is correct before proceeding https://issues.apache.org/jira/browse/COCOON-2212 COCOON-2197 Making the cocoon-auth-block acegi-security-sample work https://issues.apache.org/jira/browse/COCOON-2197 COCOON-2173 AbstractCachingProcessingPipeline: Two requests can deadlock each other https://issues.apache.org/jira/browse/COCOON-2173 COCOON-2162 [PATCH] Fix for Paginator when accessing out of bounds Pagination page https://issues.apache.org/jira/browse/COCOON-2162 COCOON-2137 XSD Schemas for CForms Development https://issues.apache.org/jira/browse/COCOON-2137 COCOON-2114 fix sorting in TraversableGenerator https://issues.apache.org/jira/browse/COCOON-2114 COCOON-2108 xmodule:flow-attr Does not accept document objects https://issues.apache.org/jira/browse/COCOON-2108 COCOON-2100 Retrieving mimeType returned by pipeline executed from Flow https://issues.apache.org/jira/browse/COCOON-2100 COCOON-2040 Union widget does not work with booleanfield set as case widget https://issues.apache.org/jira/browse/COCOON-2040 COCOON-2037 New DynamicGroup widget https://issues.apache.org/jira/browse/COCOON-2037 COCOON-2032 [PATCH] Sort order in paginated repeater https://issues.apache.org/jira/browse/COCOON-2032 COCOON-2030 submit-on-change doesn't work for a multivaluefield with list-type=checkbox https://issues.apache.org/jira/browse/COCOON-2030 COCOON-2018 Use thread context class loader to load custom binding classes https://issues.apache.org/jira/browse/COCOON-2018 COCOON-2017 More output beautification options for serializers https://issues.apache.org/jira/browse/COCOON-2017 COCOON-2015 Doctype added twice because root element (html) is inlined https://issues.apache.org/jira/browse/COCOON-2015 COCOON-2002 HTML transformer only works with latin-1 characters https://issues.apache.org/jira/browse/COCOON-2002 COCOON-1974 Donating ContextAttributeInputModule https://issues.apache.org/jira/browse/COCOON-1974 COCOON-1973 CaptchaValidator: allow case-insensitive matching https://issues.apache.org/jira/browse/COCOON-1973 COCOON-1964 Redirects inside a block called via the servlet protocol fail https://issues.apache.org/jira/browse/COCOON-1964 COCOON-1963 Add a redirect action to the browser update handler https://issues.apache.org/jira/browse/COCOON-1963 COCOON-1960 Pipeline errors for generator/reader already set should provide more information https://issues.apache.org/jira/browse/COCOON-1960 COCOON-1949 [PATCH] load flowscript from file into specified Rhino context object https://issues.apache.org/jira/browse/COCOON-1949 COCOON-1946 [PATCH] - Javaflow Sample errors trying to enhance Javaflow classes and showing cform templates https://issues.apache.org/jira/browse/COCOON-1946 COCOON-1943 [Patch] Parameters in blocks-protocol URIs get decoded too early https://issues.apache.org/jira/browse/COCOON-1943 COCOON-1932 [PATCH] correct styling of disabled suggestion lists https://issues.apache.org/jira/browse/COCOON-1932 COCOON-1929 [PATCH] Reloading classloader
HOWTO Control or disable ehcahce log output ?
Hi everybody, it seems to be a simple problem, but I am having a lot of trouble with it, so any pointers are highly welcome. Please help! I am getting a lot of DEBUG messages generated by ehcache, like 6826384 [http-8080-12] DEBUG net.sf.ehcache.Cache - cocoon-ehcache-1 cache - Miss Those messages make the log file(s) really huge. So far I have not found a way to change the log level to INFO (for example). What would be the right way to do that? I am using Tomcat 6 and Cocoon 2.11 and tried so many settings in all kinds of config files... I do not know where to start describing. Thanks, Alexander