Chapter 3. Resolved Issues
The following issues have been resolved in JBoss Data Grid 6.1.
- BZ#862594 - Using write-behind store with eviction creates a time window in which entries might not be found
- If a cache entry is in the process of being written to the underlying store (somewhere in the async queue) and the entry is being loaded from the store at the same time, the entry was already removed from the container and if not yet written on the store it might not be found. Consequently, cache entries might not be found in a short time window between the moment they are evicted and the moment they are written to the underlying cache store.This was to have been fixed with a new write-behind cache store implementation. However, the actual fix has not yet been thoroughly tested, and as such this issue is still considered unresolved.
- BZ#881073 - Asynchronous FileCacheStore doesn't work in library mode in Tomcat: Error while reading from file
- A NullPointerException is thrown when reading objects back from file to a cache. As a result, the Asynchronous FileCacheStore does not work correctly in Tomcat container. There is no workaround for this issue at this stage, and the root cause is unknown.
- BZ#894081 - Quickstart problems/improvements
- A Maven shade plug-in, which handles creating a resulting jar file for hotrod-endpoint quickstart, is not able to process required dependencies and fails. As a result, the hotrod-endpoint example cannot be built. As a workaround, configure maven-assembly-plugin so that it creates the resulting jar file with all required dependencies. The hotrod-endpoint example can now be built and started.
- BZ#894333 - Implement Drop in source migrator for JDG 6.0.x
- While JBoss Data Grid 6.1 has introduced support for rolling upgrades via Hot Rod, JBoss Data Grid 6.0 is lacking functionality which would enable a rolling upgrade from that version to a newer version. It is therefore not possible to perform a rolling upgrade from JBoss Data Grid 6.0 to JBoss Data Grid 6.1.The JBoss Data Grid 6.0 instance should be configured with a persistent cache store so that all states are persisted to it. After shutting down the JBoss Data Grid 6.0 instance, a JBoss Data Grid 6.1 instance, configured to retrieve the persistent state from the same cache store, can be started in its place. An upgrade from JBoss Data Grid 6.0 to JBoss Data Grid 6.1 is not a seamless operation but requires a complete shutdown of the system in order to be performed.
- BZ#902462 - ReplaceCommand fails in REST server
- An issue in the implementation of the storage of entries written via the REST protocol produces wrong results when the entries are compared. As a result, the replace operation invoked via the REST protocol will fail and the cache will still contain the old entry. There is no workaround available for this issue.
- BZ#904139 - JON jdg server plugin - Operations on caches / managers are disabled / unavailable = grey color, not clickable in GUI.
- The Infinispan subsystem of JBoss Data Grid Server only exposes metrics and statistics to the JBoss Operations Network plug-in. It does not yet expose the operations which are possible on a cache's components. Therefore, it is not possible to invoke operations on cache containers and caches via the JBoss Operations Network JBoss Data Grid Server plug-in.There is currently no way to invoke the missing operations via the JBoss Operations Network JBoss Data Grid Server plug-in. However some of these operations can be invoked by connecting to the JBoss Data Grid server via JMX or via the JBoss Data Grid CLI.
- BZ#904140 - RHQ library plugin + JON, problems with invoking operations on cache / cache manager
- An issue in the JBoss Operations Network JBoss Data Grid library plug-in causes all operations invoked on cache managers/caches to return a NullPointerException. The operation is correctly executed, however an error is always reported by the plug-in.
- BZ#907499 - NPE after ReplaceCommand
- Occasionally during a conditional replace operation performed via the REST interface, a NullPointerException is thrown. This causes a NullPointerException ERROR to be reported during the replace operation. The actual outcome of the replace operation in this case is undetermined, and there is currently no workaround for this issue.