VMware GemFire Release Notes
Pivotal GemFire is now VMware GemFire®.
VMware GemFire 9.10 is based on Apache Geode version 1.12, so it also includes features and bug fixes from Apache Geode version 1.11. VMware GemFire 9.10 and Apache Geode share a common set of documentation. Therefore, references to both VMware GemFire and Apache Geode appear throughout this documentation; consider them equivalents.
VMware GemFire 9.10.2 is a maintenance release that resolves a variety of issues—see Issues Resolved in VMware GemFire 9.10.2 for more information.
VMware GemFire 9.10.1 is a maintenance release that resolves a variety of issues—see Issues Resolved in VMware GemFire 9.10.1 for more information.
VMware GemFire 9.10 includes the following improvements:
JMX now exposes the free disk space percentage as a statistic.
Asynchronous event queues may now be created in a paused state. This allows better control of event dispatch, as the dispatch may be delayed until the application is ready for event consumption.
The new pluggable OQL security framework restrict which classes and methods can be called from queries. A system administrator can change the security posture at runtime. Provided implementations cover several use cases, as described in Method Invocation Authorizers.
There are new endpoints in the REST API for Management, including create and delete index, list deployed jars, show PDX configuration, and show the supported REST API versions.
You can download VMware GemFire 9.10 from the VMware GemFire product download page.
For details on how to install VMware GemFire 9.10, see Installing VMware GemFire.
To upgrade from an earlier version of VMware GemFire to the current version, see Upgrading VMware GemFire.
When servers are upgraded to this VMware GemFire version from a version prior to version 9.1.1, their authentication of client messages is disabled in order to facilitate rolling upgrades. If your clients are set up to send authenticated messages, the servers will honor those messages, but will not enforce authentication until you reinstate authentication on each of the upgraded servers.
To reinstate secure client/server messaging, restart each server with
geode.disallow-internal-messages-without-credentials system property set to
gfsh>start server --name=server_name --dir=server_config_dir \ --J=-Dgeode.disallow-internal-messages-without-credentials=true
The VMware GemFire 9.10 release is based on the Apache Geode 1.12 release, which also includes bug fixes from the Apache Geode 1.11 release. This section describes issue resolutions that significantly affect VMware GemFire applications. For a list of all issues resolved in Apache Geode 1.12, see the Geode 1.12 Release Notes. For a list of all issues resolved in Apache Geode 1.11, see the Geode 1.11 Release Notes. Ticket numbers of the form GEODE‑NNNN can be inspected at the Apache Software Foundation site for Geode issues.
GEODE-8174, GEM-2884: Fixed an issue that caused an incorrect ConcurrentModificationException to be thrown when using JTA transactions.
GEODE-8029, GEM-2919: Unused drf files are now deleted to prevent the proliferation of unused records and files, which could cause members to fail during startup while recovering disk-stores.
GEODE-8131, GEM-2938: Eliminated a point of contention in the alert logging system that could occasionally block cache operations.
GEODE-8195: Improved WAN retry logic.
GEODE-8240: After a rolling upgrade, even though all locators were upgraded, the membership view indicated some were running the old version. This would have been evident in the gfsh list members command and in logs. The correct version number is now reported.
GEODE-8259, GEM-2943: When a client performs a single-hop
getAll() operation and encounters a
serialization error, the operation is now re-tried.
GEODE-8287, GEM-2897, GEM-2950: Ironed out a recently-introduced problem that caused a degradation in performance for join queries or queries that use multiple indexes. Performance in such cases has been restored to v8.2 levels.
GEODE-7851: Pulse logging has been restored.
GEODE-7940: Fixed a problem in which a parallel gateway sender stopped sending events if another gateway sender attached to the same region was destroyed.
GEODE-8055, GEM-2890: Indexes can now be created on subregions.
GEODE-8071, GEM-2896: Changed the thread type used when executing the
gfsh rebalance command to prevent locators from hanging during shutdown.
GEODE-8091, GEM-2898: Locators failed to start after upgrade to v9.10 if a deprecated gfsh
start locator option,
--load-cluster-configuration-from-dir, was in use. Support for the
deprecated option has been restored to allow startup to proceed. Beginning with GemFire 9.5 and
Geode 1.6, the gfsh command
import cluster-configuration supersedes
start locator --load-cluster-configuration-from-dir.
GEODE-7465, GEM-2773: Fixed an issue that threw
RegionDestroyedException when an asynchronous event queue was stopped and then restarted.
GEODE-7473, GEM-2774: Fixed a memory leak in the accumulation of entry event objects that could occur when a gateway receiver existed for the same region as a gateway sender.
GEODE-7593, GEM-2795: Fixed a memory leak that caused a higher than expected heap size when eviction was enabled. The issue was due to indexes that retained references to serialized values when the indexed key was a PDX string.
GEODE-7374, GEM-2748: VMware GemFire no longer throws a
ClassCastException when using the deprecated
GEODE-7373, GEM-2746: Enforce JMX credentials to be either a string or an array of strings.
GEODE-7036, GEM-2723: Fixed a bug that could result in a
NullPointerException when restarting members and a locator rejoins the cluster to form a quorum.
GEODE-7264, GEM-2706: Updated the Jackson dependency to version 2.10.0.
GEODE-7334, GEM-2705: VMware GemFire no longer throws a
ClassCastException when the developer REST API is enabled and
JodaModule is in the classpath.
GEODE-7208, GEM-2698: Fixed Lucene index creation when there are non-primitive fields in a child class, and the fields are defined in the parent class.
GEODE-7268, GEM-2692: A
gfsh alter region no longer causes a soft hang when many gateway senders exist, by making the gfsh command implementation work more like the equivalent Java API.
GEODE-7535, GEM-2654: Fixed a race condition that could improperly result in an
EntryDestroyedException during a
getAll operation, if a client proxy region exists and there are no transactions.
GEODE-7085, GEM-2647: Eliminated an
IndexOutOfBoundsException while recovering values from disk when the region version value overflowed.
GEODE-7015, GEM-2604: Fixed a bug that could result in a hung server if a move bucket operation failed during rebalance due to a forced disconnect with recreated persistent partitioned regions.
GEODE-7042: The server launcher now waits until all of the server’s startup tasks have completed before updating the server’s status to “online”. The
ServerLauncher.start() method now blocks until redundancy recovery and recovery of values from disk have completed. This change has the effect of making the
gfsh start server command wait for all server startup tasks to complete before returning.
GEODE-4993: GatewaySender connection statistics are now stored after being captured.
GEODE-6973: Improved creation time performance when there are a large number of PDX types.
GEODE-7628, GEM-2747: Block JMX MBean creation when no
SecurityManager interface is implemented.
GEODE-7755, GEM-2614: Fixed a bug that resulted in locator processes continuing to run even when the logs show them shut down.
GEODE-7728, GEM-2819: Fixed an exception thrown when executing an equi-join query and both fields are indexed.
GEODE-7294: Moved to Spring 5 and updated other third-party libraries to their latest security patch versions.
GEODE-7310: Fixed an issue in which taking a backup was not properly aborted if a member of the distributed system was lost during the backup process.
GEODE-7750, GEODE-7760, GEODE-7796, GEM-2821, GEM-2823: Fixed an issue which could cause a locator to fail to restart properly, and also corrupted the cluster configuration.
GEODE-7763: Reduced the performance degradation caused when a client has multiple threads, and each client thread does operations on the same region key.
General support includes security vulnerability resolutions and critical bug fixes in all supported minor versions, while other maintenance is applied only to the latest supported minor release.
Obtaining and Installing Security Updates
New versions of VMware GemFire often include important security fixes, so VMware recommends you keep up to date with the latest releases.
For details about any security fixes in a particular release, see the Application Security Team page.