Apache DirectMemory 0.1-incubating
The Apache DirectMemory Team would like to announce the 0.1-incubating release.
Apache DirectMemory is a multi layered cache implementation featuring off-heap memory management to enable efficient handling of a large number of java objects without affecting jvm garbage collection performance
It's a technology preview release. So some APIs can be change in the future.
We hope you enjoy using Apache DirectMemory! If you have any questions, please consult:
Release date: 2012-07-09.
Apache DirectMemory 0.1-incubating release notes
New Feature
- [DIRECTMEMORY-37] - Update the MemoryManager API so it can be used in conjunction with NIO to provide efficient buffer management
- [DIRECTMEMORY-61] - Create Server module to receive data to cache and a client api to send datas to cache
- [DIRECTMEMORY-62] - Adopt fluent APIs for bootstrapping the Cache (and optionally manage stored objects)
Improvement
- [DIRECTMEMORY-12] - package DirectMemory as a OSGI bundle
- [DIRECTMEMORY-16] - Create a non Singleton MemoryStorage alternative
- [DIRECTMEMORY-19] - Remove deprecated MethodRule from unit tests (use @Rule)
- [DIRECTMEMORY-20] - Remove @SuppressWarnings("rawtypes","unchecked" from serializers and fix style
- [DIRECTMEMORY-27] - Upgrade to protostuff 1.0.4 and switch again to off-heap buffer
- [DIRECTMEMORY-39] - Create an 'example' module
- [DIRECTMEMORY-40] - Pointers merging with adjacent free pointers when freeing.
- [DIRECTMEMORY-42] - OffHeapMemoryBuffer store, allocate and free function's parameters consistency
- [DIRECTMEMORY-43] - Cache should allow key objects instead of plain string
- [DIRECTMEMORY-48] - Add OffHeapMemoryBuffer interface and abstraction
- [DIRECTMEMORY-53] - MemoryManagerService buffers allocation policy
- [DIRECTMEMORY-56] - Moving unused class from org.apache.directmemory.serialization to test
- [DIRECTMEMORY-58] - OffHeapMemoryBuffer.allocate should return a ByteBuffer with capacity = limit = allocatedSize to avoid overwriting
- [DIRECTMEMORY-67] - Serializer Factory should be able to load specific serializers
- [DIRECTMEMORY-71] - SerializerFactory#createNewSerializer( ClassS|String ) should throw appropriate exceptions instead of returning null
- [DIRECTMEMORY-72] - Pointer should be an interface
- [DIRECTMEMORY-75] - Create a CacheService builder to simplify the bootstrap process
- [DIRECTMEMORY-77] - Make MemoryManagerServiceWithAllocationPolicyImpl the default MemoryManagerService implementation
- [DIRECTMEMORY-78] - Completely remove the deprecated OffHeapMemoryBuffer
- [DIRECTMEMORY-80] - Build fails on Windows
- [DIRECTMEMORY-89] - Update DM-Solr integration to user Solr 3.6
- [DIRECTMEMORY-90] - Add OSGi support for directmemory-ehcache integration.
- [DIRECTMEMORY-91] - Add OSGi support for directmemory-solr
Bug
- [DIRECTMEMORY-17] - Element Eviction/Expiry issue
- [DIRECTMEMORY-18] - The expiry value is not passed to the underlying store to check the expiry of the element.
- [DIRECTMEMORY-46] - OffHeapMemoryBuffer.free do an unnecessary pointers.add
- [DIRECTMEMORY-47] - OffHeapMemoryBuffer.allocate need to be synchronized
- [DIRECTMEMORY-54] - OffHeapMemoryBuffer.clear should set to free all pointers to avoid misusage
- [DIRECTMEMORY-55] - OffHeapMemoryBuffer leaks 1 byte at every allocation
- [DIRECTMEMORY-59] - Fix statistics code for SolrOffHeapCache in examples module
- [DIRECTMEMORY-68] - Standard Serializer is broken under OSGi
- [DIRECTMEMORY-73] - NPE on put method in CacheServiceImpl when cache is full.
- [DIRECTMEMORY-81] - Disposal process run only once
- [DIRECTMEMORY-85] - Method to format in Gb has a typo
- [DIRECTMEMORY-86] - Tomcat is never stopped during the server tests
- [DIRECTMEMORY-87] - collectExpired frees not expired items instead of expired ones
- [DIRECTMEMORY-88] - Unable to retrieve JDK types (Integer, byte, ..) with the StandardSerializer
- [DIRECTMEMORY-93] - There is a typo in the ehcache feature of directmemory
- [DIRECTMEMORY-94] - directmemory-solr fails to resolve in some cases
Task
- [DIRECTMEMORY-1] - Import the codebase
- [DIRECTMEMORY-2] - Create Website for URL http://incubator.apache.org/directmemory/
- [DIRECTMEMORY-3] - Remove Dependencies from SVN
- [DIRECTMEMORY-4] - Remove eclipse project files
- [DIRECTMEMORY-5] - Remove Generated Classes from SVN
- [DIRECTMEMORY-6] - Change Package Names to get adopted
- [DIRECTMEMORY-38] - Add "TM" to project logos
- [DIRECTMEMORY-45] - Add (TM) symbol to the project logo
Test
- [DIRECTMEMORY-29] - Fix a payload size assertion in MemoryManagerTests.smokeTest()
Wish
- [DIRECTMEMORY-65] - put vs update - not consistent
Sub-task
- [DIRECTMEMORY-22] - Add OSGi integration test for directmemory
- [DIRECTMEMORY-23] - Provide a feature descriptor for Karaf