Apache Commons logo

Commons JCS™

JCS Change Log

Release History

Version Date Description
3.2.1 2024-05-27 JDK bug fix release
3.2 2023-08-22  
3.1 2022-01-03  
3.0 2020-08-16  
2.2.1 2018-08-21  
2.2 2017-08-02  
2.1 2017-02-05  
2.0 2016-12-25 JDK 1.6 based major release
2.0-beta-2 2016-11-01 JDK 1.6 based major release (beta-2)
2.0-beta-1 2015-02-19 JDK 1.6 based major release (beta 1)
1.3.3.5 2009-08-12 tempbuild
1.3.3.4 2009-08-11 tempbuild
1.3.3.3 2009-07-23 tempbuild
1.3.3.2 2009-06-11 tempbuild
1.3.3.1 2009-05-22 tempbuild
1.3.3.0 2009-05-22 tempbuild
1.3.2.9 2009-02-02 tempbuild
1.3.2.8 2008-12-16 tempbuild
1.3.2.7 2008-12-15 tempbuild
1.3.2.6 2008-12-01 tempbuild
1.3.2.5 2008-11-20 tempbuild
1.3.2.4 2008-? tempbuild
1.3.2.3 2008-09-26 tempbuild
1.3.2.2 2008-09-17 tempbuild
1.3.2.1 2008-09-08 tempbuild
1.3.2.0 2008-08-29 tempbuild
1.3.1.0 2008-04-11 tempbuild
1.3 2007-06-05 First formal release
1.2.7.9.3 in SVN  
1.2.7.9.2 in SVN  
1.2.7.9 in SVN  
1.2.7.8 in SVN  
1.2.7.7 in SVN  
1.2.7.6 in SVN  
1.2.7.3 in SVN  
1.2.7.2 in SVN  
1.2.7.1 in SVN  
1.2.7.0 in SVN  
1.2.6.9 in SVN  
1.2.6.8 in SVN  
1.2.6.7 in SVN  
1.2.6.6 in SVN  

Release 3.2.1 – 2024-05-27

Type Changes By
Fix Fix java.rmi.RemoteException: Method is not Remote in IRemoteCacheListener. This is caused by a fix for JDK issue JDK-8230967 in various JDKs such as 8u241, 11.0.6 and probably others. Fixes JCS-237, JCS-238, JCS-239, JCS-240. Thanks to Murali Thirugnanam, Greg Parmiter. tv
Update Update dependency openjpa to 3.2.2 to get rid of private transient dependencies tv

Release 3.2 – 2023-08-22

Type Changes By
Fix Fix OSGi manifest. Fixes JCS-234. Thanks to Chris Lake. tv
Fix Handle ServiceConfigurationError when using a different logging framework. Fixes JCS-232. Thanks to Jeremy Long. tv
Fix Fix Lateral TCP cache recovery loop for empty TCP servers. Fixes JCS-231. Thanks to Andrea Vettori. tv
Fix UDPDiscoveryReceiver with EncryptingSerializer fails #88. Fixes JCS-230. Thanks to Dorota Oeknigk-Urbanska. tv
Fix LateralTCPListener class uses always StandardSerializer #89. Fixes JCS-229. Thanks to Dorota Oeknigk-Urbanska. tv
Update Bump actions/cache from 2.1.7 to 3.0.9 #86, #111. Thanks to Dependabot, Gary Gregory. ggregory
Update Bump actions/checkout from 2 to 3.0.2 #93. Thanks to Dependabot, Gary Gregory. ggregory
Update Bump actions/setup-java from 2 to 3.5.1. Thanks to Gary Gregory. ggregory
Update Bump commons-parent from 52 to 58 #90, #130, #154. Thanks to Dependabot. tv
Update Bump log4j-api from 2.17.1 to 2.20.0 #85, #100, #107, #145. Thanks to Dependabot. ggregory
Update Bump log4j-core from 2.17.1 to 2.20.0 #87, #99, #108, #144. Thanks to Dependabot. ggregory
Update Bump commons-text from 1.9 to 1.10.0 #110. Thanks to Dependabot. ggregory
Update Bump commons-io from 2.11.0 to 2.12.0. Thanks to Gary Gregory. ggregory

Release 3.1 – 2022-01-03

Type Changes By
Fix Use new SecureRandom() instead of SecureRandom.getStrongInstance() to avoid potential performance problems on Linux Thanks to Bruno Kinoshita. tv
Fix Attempt to fix osgi import packages. Fixes JCS-228. Thanks to Patrick Ziegler. tv
Fix Fix for Server Failover mechanism not working, add test. Fixes JCS-191. Thanks to Prajakta Uplaikar. tv
Update Update from Apache Log4j 2.14.1 to 2.17.1 Thanks to Gary Gregory. ggregory
Update Autodetect lateral service address on the interface used for multicast - depending on the multicast protocol: IPv6 link-local address for IPv6 multicast, IPv4 site-local address for IPv4 multicast tv
Fix Use configured listener address for UDP service broadcast. Fixes JCS-186. Thanks to Alex L. tv
Fix Fix UDP service discovery with LateralCache. Fixes JCS-186. Thanks to Alex L. tv
Update Use NIO for UDP service discovery, works with IPv6 now tv
Update Use NIO for LateralTCPListener tv
Update IMPORTANT CHANGE Use IElementSerializer for LateralTCPSender and listener tv
Update IMPORTANT CHANGE Use IElementSerializer for RemoteHttpCacheServlet tv
Update IMPORTANT CHANGE Use IElementSerializer for Block disk key storage tv
Update IMPORTANT CHANGE Use IElementSerializer for UDP service discovery tv
Fix Fix shutdown race conditions tv
Add Add EncryptingSerializer and some documentation tv
Update Replace several Runnable classes with Lambdas Deprecate original classes tv
Remove Remove support for long deprecated and inconsistent RemoteCacheServer configuration keys - remote.cache.service.port is now jcs.remotecache.serverattributes.servicePort - remote.cache.rmiSocketFactoryTimeoutMillis is now jcs.remotecache.serverattributes.rmiSocketFactoryTimeoutMillis - remote.cluster.LocalClusterConsistency is now jcs.remotecache.serverattributes.LocalClusterConsistency - remote.cluster.AllowClusterGet is now jcs.remotecache.serverattributes.AllowClusterGet tv
Add Add BlockDiskKeyStore.isEmpty(). Thanks to Gary Gregory. ggregory
Add Add IndexedDisk.isEmpty(). Thanks to Gary Gregory. ggregory
Update Update from Apache Commons Lang 3.10 to 3.12.0. Thanks to Gary Gregory. ggregory
Update Bump build actions/setup-java from v1.4.3 to v2. Thanks to Gary Gregory. ggregory
Update Update from Apache Commons IO 2.8.0 to 2.10.0, #72. Thanks to Gary Gregory, Dependabot. ggregory
Update Bump actions/cache from 2.1.5 to 2.1.6 #70. Thanks to Dependabot. ggregory
Update Bump log4j-api from 2.13.2 to 2.17.1 #79, #81. Thanks to Dependabot. ggregory

Release 3.0 – 2020-08-16

Type Changes By
Fix Fix packaging. Fixes JCS-205. tv
Add Add configuration option to specify the datagram time-to-live in UDPDiscoverySender. Fixes JCS-46. tv
Add Add configuration option to specify the network interface to use for UDP multicast tv
Add Add configuration option to specify the host to bind the LateralTCPListener to. Fixes JCS-166. tv
Fix Properly shut down auxiliary caches. Fixes JCS-199. tv
Fix Fix NPE while closing data source. Fixes JCS-182. tv
Fix Fix initialization sequence. Fixes JCS-201. tv
Remove Remove dependency on commons-logging. Fixes JCS-122. tv
Add Add a log abstraction layer for java.util.logging or log4j2. Fixes JCS-122. tv
Add Add a get method to CacheAccess that allows a Supplier to be specified tv
Remove Remove dependency on velocity-tools tv
Remove Remove deprecated code tv
Update Update dependency to httpclient 4.5.3. Fixes JCS-181. tv
Update Update dependency commons-dbcp2 tv
Update Finally require Java 8 tv

Release 2.2.1 – 2018-08-21

Type Changes By
Fix Unexpected dispose() in CompositeCacheManager.release() Thanks to athun. kinow
Fix JCache CDI Integration is slow. Fixes JCS-183. rmannibucau

Release 2.2 – 2017-08-02

Type Changes By
Fix CacheInvocationContextImpl NPE if method doesnt have any argument. Fixes JCS-180. rmannibucau
Fix RemoteCacheServerFactory not able to start server. Fixes JCS-179. Thanks to Archer. tv
Fix Clients using RemoteCache are not working. Add a test. Fixes JCS-178. tv
Add Add a shutdown() method to JCS tv
Fix Fix: CompositeCacheManager leaks memory if CacheAccess.dipose is called. Fixes JCS-177. Thanks to Ryan Fong. tv

Release 2.1 – 2017-02-05

Type Changes By
Fix SoftReference cache did not work because of strong references being stored in payload of DoubleLinkedListNode tv
Fix ElementAttributes.clone() not updating createTime causes cache elements to expire immediately. Fixes JCS-172. Thanks to Tom Schroeder. tv
Fix Multiple CacheEventQueue.QProcessor spawned for the same cache region. Fixes JCS-171. Thanks to Wiktor Niesiobedzki. tv
Fix Replace at least commas for jmx registration. Fixes JCS-170. rmannibucau

Release 2.0 – 2016-12-25

Type Changes By
Update Improve concurrency in - CompositeCacheManager - CacheEventQueue - CacheWatchRepairable - LHMLRUMemoryCache. Fixes JCS-119. tv
Fix JCache Access Expiry not respected. Fixes JCS-169. rmannibucau
Fix cdi/nocdi jcache jar doesnt contain the right META-INF/services/javax.enterprise.inject.spi.Extension file. Fixes JCS-168. rmannibucau
Update Deprecate JCS.defineRegion() methods tv

Release 2.0-beta-2 – 2016-11-01

Type Changes By
Remove Remove size limitation configuration of indexed cache recycle bin tv
Remove Replace SortedPreferentialArray with JDK ConcurrentSkipListSet tv
Remove Replace SingleLinkedList with JDK ConcurrentLinkedQueue tv
Update Simplify management of auxiliary caches. Fixes JCS-130. tv
Fix Fix: BlockDiskCache partial remove / group remove doesn't work. Fixes JCS-165. Thanks to Wiktor Niesiobedzki. tv
Fix BlockDiskCache is limited to 2GB. Fixes JCS-156. Thanks to Ryan Fong. sebb
Fix Fix: Memory region properties documentation incorrect. Fixes JCS-162. Thanks to Ryan Fong. tv
Fix Fix: Dynamic regions leak memory upon dispose due to ShrinkerTask. Fixes JCS-161. Thanks to Ryan Fong. tv
Add Add soft reference memory cache. Fixes JCS-54. Thanks to Tore Halset. tv
Fix Fix: RemoteCacheStartupServlet can't start with config outside classpath. Fixes JCS-78. Thanks to Marko Stipanov. tv
Add Add verification of block disk cache key file. Thanks to Wiktor Niesiobedzki. tv
Fix Fix: BlockDiskCache overwrites data after loading from disk. Fixes JCS-159. Thanks to Wiktor Niesiobedzki. tv
Fix Fix Javadoc for Java 8 Thanks to Mat Jaggard. tv
Fix Fix: CompositeCacheManager is thread-hostile. Fixes JCS-116. Thanks to Sebb. tv
Fix Fix NullPointerException in IndexedDiskCache.addToRecycleBin(...). Fixes JCS-158. Thanks to Wiktor Niesiobedzki. tv
Update Reduce synchronization tv
Fix Fix file size limitation for Block Disk Cache and Indexed Disk Cache. Fixes JCS-153. Thanks to Wiktor Niesiobedzki. tv
Fix When reading keys from disk, a StreamCorruptedException happens when a custom serializer is applied. Fixes JCS-149. Thanks to Youngho Cho. tv
Update Replace PoolAccess with a DataSourceFactory model borrowed from DB-Torque. Fixes JCS-48. Thanks to Hanasaki Jiji. tv
Fix Fix removal of items from group cache, added several tests tv
Add Add orderly shutdown of ThreadPoolManager tv
Update Make the code in Step 5 on the JCS overview page a full working class that can compile. Fixes JCS-124. Thanks to Richard Eigenmann. tv
Fix JCacheFilter code logic error, first hit always fails. Fixes JCS-140. Thanks to liangjiarui. rmannibucau
Add Provide file size limitation for Block Disk Cache and Indexed Disk Cache. Fixes JCS-147. Thanks to Wiktor Niesiobedzki. tv
Fix Incomplete shutdown of RemoteCacheServer. Fixes JCS-96. Thanks to Gregory Fernandez. tv
Fix Unnecessary use of FileChannel.force() in Indexed and Block Disk Caches. Fixes JCS-148. Thanks to Wiktor Niesiobedzki. tv
Fix IndexedDiskCache: Mismatched memory and disk length (0) for [DED: pos = 63802 len = 9658] during optimization. Fixes JCS-146. Thanks to Wiktor Niesiobedzki. tv
Fix AbstractDiskCacheAttributes logs error, when directory already exists. Fixes JCS-145. Thanks to Wiktor Niesiobedzki. tv
Fix BlockDiskCache hangs on SEVERE: Region [TMS] Failure getting from disk--IOException. Fixes JCS-144. Thanks to Wiktor Niesiobedzki. tv
Fix RemoteCacheServerFactory ignores configuration. Fixes JCS-141. Thanks to validruk. tv

Release 2.0-beta-1 – 2015-02-19

Type Changes By
Fix PropertySetter doesn't set Enum properly. Added a test. Fixes JCS-139. Thanks to Youngho Cho. tv
Fix OutOfMemoryError when using compressing serializer. Fixes JCS-136. Thanks to Youngho Cho. tv
Fix RemoteUtils.getNamingURL does not handle IPv6 numeric addresses properly. Fixes JCS-133. sebb
Remove Remove KeyGeneratorUtil and AddressUtil as they are not used. Fixes JCS-131. tv
Fix Improve error handling by bubbling up exceptions. Fixes JCS-113. tv
Add jcache-extra module to provide basic classes based on JCache API. rmannibucau
Add Web CacheFilter to cache http responses. rmannibucau
Add OpenJPA L2 Cache based on JCache API. rmannibucau
Update Allow configuration to set its TimeFactorForMilliseconds and use second by default. This has as impact to remove "Seconds" suffix from corresponding configurations. rmannibucau
Fix JDBCDiskCachePoolAccessManager is thread hostile. Fixes JCS-115. tv
Add Add jcache implementation. Fixes JCS-118. Thanks to Romain Manni-Bucau. olamy
Fix Potential NPE in JDBCDiskCache Fixed NPEs in getSize() and getStatistics(). Fixes JCS-113. sebb
Fix RemoteCacheServer.logUpdateInfo bug updating put count. Fixes JCS-112. sebb
Fix Fix updating of last access time, add tests for event handling tv
Update Update documentation to reflect generics and API changes tv
Remove Remove dependency on commons-lang3 tv
Add Add simple JMX monitoring feature by exposing the JCSAdminBean to JMX tv
Update Improve performance of BlockDisk.write(Serializable). Fixes JCS-109. Thanks to Xiong LIU. tv
Fix Reworked the interfaces to make the group cache typesafe. Fixes JCS-102. Thanks to Robert Clark. tv
Fix Fix return value of BlockDisk.write(long, byte[]). Fixes JCS-108. Thanks to Xiong LIU. tv
Update Change package to org.apache.commons.jcs, groupId to org.apache.commons, artifactId to commons-jcs and version to 2.0-SNAPSHOT tv
Fix Map region names to valid file names. Fixes JCS-95. Thanks to Nicolas Gomez Navarrete. tv
Fix Bad comparison of int with Long.MAX_VALUE. Fixes JCS-106. Thanks to Johannes Weberhofer. tv
Fix MaxMemoryIdleTimeSeconds default value is wrongly documented. Fixes JCS-103. Thanks to Pavel Novak. tv
Update Use central thread pool instance to clean up the code. tv
Update Use type-safe enums instead of integer constants to clean up the code. tv
Fix JCS fails to properly dispose of the lateral TCP listener thread. If a webapp that uses JCS lateral TCP cache is undeployed, the listener is left hanging with no hope for exit. Fixes JCS-91. Thanks to Diego Rivera. tv
Fix Contradictory documentation on RemoveUponRemotePut default value. Fixes JCS-49. Thanks to David Easley. tv
Add Add getGroupNames() to all caches. Fixes JCS-94. Thanks to Andrew Leamon. tv
Add LateralTCPService should implement getGroupKeys. Fixes JCS-94. Thanks to Andrew Leamon. tv
Update CompositeCache: Add method to get auxiliary caches, changed visibility of isExpired() to protected. Fixes JCS-75. Thanks to Chiat Lam. tv
Fix Concurrent cache access causes values loss. Fixes JCS-73. Thanks to Alexander Kleymenov. tv
Fix NullPointerException thrown by IndexedDiskCache if IndexedDisk calls fail to initialize. Fixes JCS-77. Thanks to Matt Morrisson. tv
Fix When issuing a shutDown() command, JCS fails to clean up the Queue Processor thread. Fixes JCS-90. Thanks to Diego Rivera. tv
Fix UDP Discovery fails to report correct IP address to peers for back-connect when InetAddress.getLocalHost() fails to return an externally-visible address (i.e. returns a local address). Fixes JCS-89. Thanks to Diego Rivera. tv
Fix Add a test to verify correct block size calculation. Fixes JCS-88. Thanks to Diego Rivera. tv
Update Change the interfaces to use generics tv
Fix Fix region properties documentation. Fixes JCS-86. Thanks to Roman Solo. tv
Fix Throw an explicit CacheException when a cache manager instance cannot read its configuration. Fixes JCS-22. Thanks to Michael Jordan. tv
Fix Fix NPE in CompositeCacheConfigurator.parseRegion. Fixes JCS-79. Thanks to Graham Leggett. tv
Fix Made RemoteCacheServer public, added remote cache remove feature to JCSAdminBean. Fixes JCS-68. Thanks to Niall Gallagher. tv
Fix Use oos.writeUnshared() for LateralTCPSender. Fixes JCS-82. Thanks to Nikunj Trivedi. tv
Fix Ensure shutdown of LateralCacheMonitor. Fixes JCS-69. Thanks to Michael Stevens. tv
Fix Add method for programmatic configuration to JCS. Fixes JCS-11. Thanks to Peter Schwarz. tv
Fix Increase precision of CREATE_TIME, fix name of UPDATE_TIME_SECONDS column. Fixes JCS-84. Thanks to Aleksandar Ivanisevic. tv
Update Update IndexDisk and BlockDisk to use NIO in an attempt to fix a timing-dependent test failure. tv
Update Update build files to make JCS a true Apache Commons component. tv
Update Set UTF-8 encoding on all source files tv
Update Move site generation to Maven 2. Integrate site into Apache Commons. tv
Fix Fix VelocityServlet deprecation tv
Add Upgraded Commons Lang dependency to 3.0 bayard
Update Move to JDK 5 Generics tv
Update Move to JDK 5 Concurrent tv
Update Move build system to Maven 2 tv

Release 1.3.3.5 – 2009-08-12

Type Changes By
Fix Fixed bug in indexed disk cache. Partial key removal was adding duplicates in the recycle bin. This lead to the multiple keys pointing to the same spot on disk. Fixes JCS-67. asmuts

Release 1.3.3.4 – 2009-08-11

Type Changes By
Fix Fixed bug in block disk cache. It couldn't handle items with more than 127 blocks. Now it can. (Note: for performance reasons, you should try to fit your items in as few blocks as possible.). Fixes JCS-66. asmuts

Release 1.3.3.3 – 2009-07-23

Type Changes By
Update TCP Lateral now uses a queuing zombie service during recovery. asmuts
Update Refactored UDP Discovery. asmuts
Fix Slots for same key updates now get added to the recycle bin. Fixes JCS-60. asmuts
Update Added File Disk Cache. Fixes JCS-58. asmuts
Fix Default properties should now work. Fixes JCS-53. asmuts
Update Caught Throwable in JDBC disk cache shrinker, so it won't die. asmuts

Release 1.3.3.2 – 2009-06-11

Type Changes By
Update Added a compressing serializer. asmuts
Update Added an LHMLRUMemoryCache. asmuts

Release 1.3.3.1 – 2009-05-22

Type Changes By
Update Added a clearDiskOnStartup configuration option for the IndexedDisk Cache. False by default. asmuts
Fix Fixed data chunking bug in BlockDisk. Fixes JCS-56. asmuts

Release 1.3.3.0 – 2009-05-22

Type Changes By
Update Made "openTimeOut" and "socketTimeOut" configurable on the TCP Lateral. asmuts

Release 1.3.2.9 – 2009-02-02

Type Changes By
Fix Fixed bug in Remote Http Client URL creation for query strings. asmuts
Fix Fixed disk cache custom serializer injection. Fixes JCS-55. Thanks to Alexander Sofronov. asmuts

Release 1.3.2.8 – 2008-12-16

Type Changes By
Fix Fixed bug remote cache listener interface. asmuts

Release 1.3.2.7 – 2008-12-15

Type Changes By
Update Added a simple http remote cache client and server. asmuts
Fix Fixed bug in the MySQLDiskCache optimizer. It can now use a shared pool. asmuts

Release 1.3.2.6 – 2008-12-01

Type Changes By
Fix Fixed balking bug in getMatching( String pattern ) API. asmuts
Fix Fixed event naming bug in getMatching( String pattern ) API. asmuts

Release 1.3.2.5 – 2008-11-20

Type Changes By
Update Added a getMatching( String pattern ) API. asmuts

Release 1.3.2.4 – 2008-?

Type Changes By
Update Added the ability to inject a custom event queue. You simply specify the classname as the type. asmuts
Update Added the ability to share a connection pool amongst different JBC disk cache instances. asmuts

Release 1.3.2.3 – 2008-09-26

Type Changes By
Update Added the ability to inject a custom RMI socket factory to be used by the remote cache server. asmuts

Release 1.3.2.2 – 2008-09-17

Type Changes By
Update Added a registry keep alive and restore option for the remote cache server. asmuts

Release 1.3.2.1 – 2008-09-08

Type Changes By
Update Made all disk cache managers handle custom event loggers. asmuts

Release 1.3.2.0 – 2008-08-29

Type Changes By
Update Added eventLogging to major auxiliaries and to the auxiliary factory interface. This allows you to time and monitor the internal working of the cache. asmuts
Update Moving to JDK 1.4 compliance. 1.3 not supported. asmuts
Update Added the ability to inject custom serializers into auxiliary caches. asmuts
Fix Added a work-around to the host address resolution used by the TCP lateral and the remote cache. Fixes JCS-40. Thanks to Niall Gallagher. asmuts
Fix Added getSource to IElementEvent interface. Fixes JCS-38. Thanks to Timothy Cronin. asmuts
Update Made spool chunk size configurable. Fixes JCS-44. Thanks to Maxim Gordienko. asmuts
Fix Added RMI socket connect timeout. Made this configurable on the server and client. Fixes JCS-41. Thanks to Niall Gallagher. asmuts
Fix Fixed client decrement count in indexed disk cache. Fixes JCS-36. Thanks to Matthias Kerkhoff. asmuts
Fix Moved shutdown hook from disk cache to composite cache manager. Fixes JCS-32. Thanks to Andy. asmuts

Release 1.3.1.0 – 2008-04-11

Type Changes By
Update Added getMultiple() method to ICache Thanks to Chris Fairbanks. asmuts

Release 1.3 – 2007-06-05

Type Changes By
Update Updated/added license headers in all files. tv

Release 1.2.7.9.3 – in SVN

Type Changes By
Fix Fixed partial key and group id removal bug in indexed disk cache. Fixes JCS-15. Thanks to Kevin Preece. asmuts
Fix Fixed partial key removal SQL syntax problem with the JDBC disk cache. Fixes JCS-20. Thanks to Alistair Forbes. asmuts
Fix Fixed a few minor missing locks. Fixes JCS-21. Thanks to Michael Stevens. asmuts

Release 1.2.7.9.2 – in SVN

Type Changes By
Update Added a summary page to the JCSAdmin.jsp that just dumps the stats for a region. It doesn't display all the keys. asmuts
Update Added get, put, and remove counts to the lateral and remote stats. Added hit count to disk cache stats. asmuts
Fix Fixed non thread safe OOS writes in the TCP Lateral Sender. This was causing endless loops deep down in the OOS code. Fixes JCS-12. Thanks to John Klame. asmuts

Release 1.2.7.9 – in SVN

Type Changes By
Fix Fixed last element too small recycle bin bug. Fixes JCS-1. asmuts
Update Added the ability to send all items to disk or to use the disk merely as a swap. This is done by setting the DiskUsagePattern on the cache attributes for a region. Fixes JCS-2. asmuts
Fix Disk optimization now occurs in place, without using additional files. It is far more efficient. Fixes JCS-3. Thanks to Peter Schwarz. asmuts
Fix The disk cache will not optimize on shutdown if the freedata size is 0. Fixes JCS-4. asmuts
Fix Remote cache client will now shutdown properly. Fixes JCS-8. asmuts
Fix Only send memory items to disk auxiliaries on shutdown. Fixes JCS-9. asmuts

Release 1.2.7.8 – in SVN

Type Changes By
Update Added the ability to schedule optimizations for the MySQL disk cache. It can also recover from optimization failure and repair the table. It's been tested and is running in a production environment. asmuts

Release 1.2.7.7 – in SVN

Type Changes By
Fix Fixed the array index out of bounds exception in the Sorted Preferential Array. Thanks to Brian Crow @noteworthyms.com. asmuts

Release 1.2.7.6 – in SVN

Type Changes By
Fix Fixed UDP discovery configuration problem. The discovery address was not being used. It was broken in the last release. Thanks to Rick Szeto @vizible.com. asmuts
Fix Fixed disk cache class cast problem when running inside the remote cache. The disk cache was casting to an instance and not the ICacheElement interface. Thanks to Alistair Forbes. asmuts

Release 1.2.7.3 – in SVN

Type Changes By
Update You can now configure the remote cache client to not receive from the remote server. asmuts
Update Added a new xdoc for the Remote Cache properties. asmuts
Update Improved the jcs admin jsp: added stats details, better navigation, item lookup, and remove confirmation. asmuts

Release 1.2.7.2 – in SVN

Type Changes By
Update You can configure the remote cache to use a custom RMI Socket Factory with socket timeouts. asmuts
Fix Removed redundant system out logging from remote cache server. hchar
Update Added additional stats for remote cache. asmuts

Release 1.2.7.1 – in SVN

Type Changes By
Update Added a JDBC disk cache. It has been tested with MYSql and HSQL. asmuts
Update Added a special HSQL implementation of the JDBC disk cache. This replaces the previous experimental HSQL implementation. asmuts
Update Added a new xdoc for the JDBC Disk Cache properties. asmuts

Release 1.2.7.0 – in SVN

Type Changes By
Update Removed dependencies on commons-lang and on commons-collections from the core of JCS. asmuts
Update Increased test coverage. asmuts
Fix Fixed entry set creation problem in LRUMap. asmuts

Release 1.2.6.9 – in SVN

Type Changes By
Update The remote cache now sends a byte array to the server instead of the class. This allows you to run the remote server without copies of your objects in its classpath. This makes the remote server far easier to use. asmuts
Update Created an interface for cache element serializers and made a default implementation. This will allow use to use other serialization mechanisms in the future. I converted the remote cache to use the standard serializer. asmuts
Update Added several new unit tests. asmuts
Update Improved Javadocs throughout. asmuts

Release 1.2.6.8 – in SVN

Type Changes By
Fix Moved synchronization from the client to the sorted preferential array. This solved the index out of bounds exception that appeared periodically on disk cleanup. asmuts
Update Improved Javadocs throughout. asmuts

Release 1.2.6.7 – in SVN

Type Changes By
Fix Fixed shutdown for lateral. Added shutdown observer framework. Changed listener thread to a daemon. Made executor on listener use a daemon setting thread factory. Thanks to Adam Siefker @amazon.com. asmuts
Fix Fixed abstract inner class references for Jikes. asmuts
Update Improved Javadocs throughout. asmuts

Release 1.2.6.6 – in SVN

Type Changes By
Fix Properties are loaded using the current thread's classloader by default. asmuts
Fix When a config file is not found a descriptive error message is printed to the logs. asmuts
Update Made an interface for the cache manager to improve testability. asmuts
Update Auxiliaries are assigned a cache manager and the lateral TCP has a settable source id, so it can be tested. asmuts
Update Increased JGroups version to 2.2.8. It works again. The old JGroups didn't work for unknown reasons. asmuts
Update Cleaned up some javadocs. asmuts
Update Improved info level logging for TCP lateral. asmuts
Update Added configuration properties xdocs for TCP lateral, indexed disk, and memory cache. asmuts
Update Created concurrent tests for TCP lateral to verify correct region behavior. asmuts
Update Made BDBJE work with new auxiliary changes. asmuts
Fix UDP discovery no longer activates if the lateral type isn't TCP. asmuts
Fix Reduced lateral get timeout to 1 second, rather than 10. We still need to disable gets when a timeout occurs. asmuts