[ https://issues.apache.org/jira/browse/TILES-585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15354663#comment-15354663 ]
ASF GitHub Bot commented on TILES-585: -------------------------------------- GitHub user JakubDziworski opened a pull request: https://github.com/apache/tiles/pull/9 TILES-585: Definition cascade attributes duplicated values under high… Fixes https://issues.apache.org/jira/browse/TILES-585 You can merge this pull request into a Git repository by running: $ git pull https://github.com/JakubDziworski/tiles TILES-585-fix Alternatively you can review and apply these changes as the patch at: https://github.com/apache/tiles/pull/9.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #9 ---- commit 78d9001ea5d0b02523ada36453848125d80ec6e3 Author: Jakub Dziworski <jakub.dziwor...@gmail.com> Date: 2016-06-29T06:41:02Z TILES-585: Definition cascade attributes duplicated values under high load ---- > Definition cascade attributes duplicated values under high load > --------------------------------------------------------------- > > Key: TILES-585 > URL: https://issues.apache.org/jira/browse/TILES-585 > Project: Tiles > Issue Type: Bug > Components: tiles-core > Affects Versions: 3.0.5 > Reporter: Jakub Dziworski > Priority: Critical > > The problem concerns {code:java} > CachingLocaleUrlDefinitionDAO.getDefinitions(Locale customizationKey) {code} > which lacks synchronization. > To reproduce the bug: > # Set up few clients with different Accept-Language headers > # Make the clients perform many request in short time (check out jmeter > script attached below) > # the retValue contains entries with definitions with cascade attirbutes > whose elements are duplicated. > We *fixed it by marking getDefinitions method synchronized*. > Here is jmeter script to reproduce bug: > [http://pastebin.com/pQT32Crx] > For following definition: > {code} > <definition name="template" template="/WEB-INF/views/template.jsp"> > <put-list-attribute name="scripts" cascade="true"> > <add-attribute value="mstatic/js/form-validation-lang-hu.js" /> > <add-attribute value="mstatic/js/jquery.core.min.js" /> > <add-attribute value="mstatic/js/scripts.min.js" /> > <!--other attributes--> > </put-list-attribute> > </definition> > {code} > Cascade attributes are duplicated: > > !https://s31.postimg.org/9z8fr06ux/image.png! -- This message was sent by Atlassian JIRA (v6.3.4#6332)