commons-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From rmannibu...@apache.org
Subject svn commit: r1812872 - in /commons/proper/jcs/branches/commons-jcs-2.2.x: commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/ commons-jcs-core/src/test/java/org/apache/commons/jcs/engine/control/ src/changes/
Date Sun, 22 Oct 2017 06:48:16 GMT
Author: rmannibucau
Date: Sun Oct 22 06:48:16 2017
New Revision: 1812872

URL: http://svn.apache.org/viewvc?rev=1812872&view=rev
Log:
backporting JCS-184 to 2.2.x

Added:
    commons/proper/jcs/branches/commons-jcs-2.2.x/commons-jcs-core/src/test/java/org/apache/commons/jcs/engine/control/CompositeCacheManagerTest.java
Modified:
    commons/proper/jcs/branches/commons-jcs-2.2.x/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/CompositeCacheManager.java
    commons/proper/jcs/branches/commons-jcs-2.2.x/src/changes/changes.xml

Modified: commons/proper/jcs/branches/commons-jcs-2.2.x/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/CompositeCacheManager.java
URL: http://svn.apache.org/viewvc/commons/proper/jcs/branches/commons-jcs-2.2.x/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/CompositeCacheManager.java?rev=1812872&r1=1812871&r2=1812872&view=diff
==============================================================================
--- commons/proper/jcs/branches/commons-jcs-2.2.x/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/CompositeCacheManager.java
(original)
+++ commons/proper/jcs/branches/commons-jcs-2.2.x/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/CompositeCacheManager.java
Sun Oct 22 06:48:16 2017
@@ -736,8 +736,8 @@ public class CompositeCacheManager
                 if ( log.isDebugEnabled() )
                 {
                     log.debug( "Release called, but " + clients + " remain" );
-                    return;
                 }
+                return;
             }
 
             if ( log.isDebugEnabled() )

Added: commons/proper/jcs/branches/commons-jcs-2.2.x/commons-jcs-core/src/test/java/org/apache/commons/jcs/engine/control/CompositeCacheManagerTest.java
URL: http://svn.apache.org/viewvc/commons/proper/jcs/branches/commons-jcs-2.2.x/commons-jcs-core/src/test/java/org/apache/commons/jcs/engine/control/CompositeCacheManagerTest.java?rev=1812872&view=auto
==============================================================================
--- commons/proper/jcs/branches/commons-jcs-2.2.x/commons-jcs-core/src/test/java/org/apache/commons/jcs/engine/control/CompositeCacheManagerTest.java
(added)
+++ commons/proper/jcs/branches/commons-jcs-2.2.x/commons-jcs-core/src/test/java/org/apache/commons/jcs/engine/control/CompositeCacheManagerTest.java
Sun Oct 22 06:48:16 2017
@@ -0,0 +1,54 @@
+package org.apache.commons.jcs.engine.control;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import junit.framework.TestCase;
+
+import org.apache.commons.jcs.engine.CacheStatus;
+import org.apache.commons.jcs.engine.CompositeCacheAttributes;
+
+/** Unit tests for the composite cache manager */
+public class CompositeCacheManagerTest
+        extends TestCase
+{
+
+    /**
+     * Verify that calling release, when there are active clients, the caches are correctly
disposed or not.
+     */
+    public void testRelease()
+    {
+        // See JCS-184
+        // create the manager
+        CompositeCacheManager manager = CompositeCacheManager.getInstance();
+        // add a simple cache
+        CompositeCacheAttributes cacheAttributes = new CompositeCacheAttributes();
+        CompositeCache<String, String> cache = new CompositeCache<String, String>(cacheAttributes,
/* attr */ null);
+        manager.addCache("simple_cache", cache);
+        // add a client to the cache
+        CompositeCacheManager.getUnconfiguredInstance();
+        // won't release as there are still clients. Only disposed when release() is called
by
+        // the last client
+        manager.release();
+        assertEquals("The cache was disposed during release!", CacheStatus.ALIVE, cache.getStatus());
+        manager.release();
+        assertEquals("The cache was NOT disposed during release!", CacheStatus.DISPOSED,
cache.getStatus());
+    }
+
+}
\ No newline at end of file

Modified: commons/proper/jcs/branches/commons-jcs-2.2.x/src/changes/changes.xml
URL: http://svn.apache.org/viewvc/commons/proper/jcs/branches/commons-jcs-2.2.x/src/changes/changes.xml?rev=1812872&r1=1812871&r2=1812872&view=diff
==============================================================================
--- commons/proper/jcs/branches/commons-jcs-2.2.x/src/changes/changes.xml (original)
+++ commons/proper/jcs/branches/commons-jcs-2.2.x/src/changes/changes.xml Sun Oct 22 06:48:16
2017
@@ -20,6 +20,9 @@
 	</properties>
 	<body>
         <release version="2.2.1" date="2017-08-02">
+          <action dev="kinow" type="fix" due-to="athun">
+            Unexpected dispose() in CompositeCacheManager.release()
+          </action>
           <action issue="JCS-183" dev="rmannibucau" type="fix">
             JCache CDI Integration is slow
           </action>



Mime
View raw message