Author: mck
Date: Wed Jul 13 12:19:30 2016
New Revision: 1752407
URL: http://svn.apache.org/viewvc?rev=1752407&view=rev
Log:
forward port commit 1752405 to trunk using
svn merge -c1752405 ^/tiles/framework/branches/TILES_3_0_X .
TILES-585 – Definition cascade attributes duplicated values under high load
Modified:
tiles/framework/trunk/ (props changed)
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/dao/CachingLocaleUrlDefinitionDAO.java
Propchange: tiles/framework/trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jul 13 12:19:30 2016
@@ -1,2 +1,2 @@
-/tiles/framework/branches/TILES_3_0_X:1486577,1538333,1539385,1539481-1541580,1543135,1571643,1594481-1626663,1706314
+/tiles/framework/branches/TILES_3_0_X:1486577,1538333,1539385,1539481-1541580,1543135,1571643,1594481-1626663,1706314,1752405
/tiles/framework/trunk:829356,836356,880940,880948,887758,900938-902966,904552,921998,931637,949559,950449,982366-982367,989864-990230,996297,1042419,1061995,1080544,1080580-1081105
Modified:
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/dao/CachingLocaleUrlDefinitionDAO.java
URL:
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/dao/CachingLocaleUrlDefinitionDAO.java?rev=1752407&r1=1752406&r2=1752407&view=diff
==============================================================================
---
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/dao/CachingLocaleUrlDefinitionDAO.java
(original)
+++
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/dao/CachingLocaleUrlDefinitionDAO.java
Wed Jul 13 12:19:30 2016
@@ -167,6 +167,11 @@ public class CachingLocaleUrlDefinitionD
* @since 2.1.0
*/
protected synchronized Map<String, Definition>
checkAndloadDefinitions(Locale customizationKey) {
+ Map<String, Definition> existingDefinitions =
locale2definitionMap.get(customizationKey);
+ boolean definitionsAlreadyLoaded = existingDefinitions != null;
+ if (definitionsAlreadyLoaded) {
+ return existingDefinitions;
+ }
if (checkRefresh && refreshRequired()) {
locale2definitionMap.clear();
definitionResolver.clearPatternPaths(customizationKey);