Author: mck
Date: Wed Jul 13 12:13:34 2016
New Revision: 1752405
URL: http://svn.apache.org/viewvc?rev=1752405&view=rev
Log:
TILES-585 – Definition cascade attributes duplicated values under high load
Fix by Jakub Dziworski - [email protected]
This closes #9
ref:
https://github.com/apache/tiles/pull/9/commits/78d9001ea5d0b02523ada36453848125d80ec6e3
Modified:
tiles/framework/branches/TILES_3_0_X/tiles-core/src/main/java/org/apache/tiles/definition/dao/CachingLocaleUrlDefinitionDAO.java
Modified:
tiles/framework/branches/TILES_3_0_X/tiles-core/src/main/java/org/apache/tiles/definition/dao/CachingLocaleUrlDefinitionDAO.java
URL:
http://svn.apache.org/viewvc/tiles/framework/branches/TILES_3_0_X/tiles-core/src/main/java/org/apache/tiles/definition/dao/CachingLocaleUrlDefinitionDAO.java?rev=1752405&r1=1752404&r2=1752405&view=diff
==============================================================================
---
tiles/framework/branches/TILES_3_0_X/tiles-core/src/main/java/org/apache/tiles/definition/dao/CachingLocaleUrlDefinitionDAO.java
(original)
+++
tiles/framework/branches/TILES_3_0_X/tiles-core/src/main/java/org/apache/tiles/definition/dao/CachingLocaleUrlDefinitionDAO.java
Wed Jul 13 12:13:34 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);