Apache Commons logo

Commons JCS™

JCS Change Log

Release History

Version Date Description
2.0 unreleased JDK 1.6 based major release
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 2.0 - unreleased

Type Changes By
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