vFabric GemFire Native Client 3.6.4 Release Notes

vFabric GemFire Native Client 3.6.4 | 6 DEC 2012

Last Document Update: 6 DEC 2012

VMware® vFabric™ GemFire® Native Client provides access for C++ and Microsoft® .NET™ clients to the vFabric GemFire distributed system. For information on setting up GemFire for use by your native client applications, see the vFabric GemFire documentation.

What's in the Release Notes

The release notes cover the following topics:

What's New in vFabric GemFire Native Client 3.6.4

vFabric GemFire Native Client 3.6.4 addresses a compatibility issue between native clients using version 3.6.3 and earlier and vFabric GemFire 7.0 servers. If you want to upgrade your servers to vFabric GemFire 7.0 while keeping your native clients at 3.6.x, first upgrade your servers to 6.6.4 and your native clients to 3.6.4. This ensures that native clients can still connect to vFabric GemFire 7.0 servers during your upgrade. For additional details on this issue, see http://kb.vmware.com/kb/2039980.

Note: If you plan to immediately upgrade all your servers and native clients to vFabric GemFire 7.0 and vFabric GemFire Native Client 7.0, you do not need to upgrade to vFabric GemFire 6.6.4 and vFabric GemFire native client 3.6.4.

vFabric GemFire Native Client 3.6.4 also includes the following improvements:

  • Improved logging message related to PDX Serialization.
  • Numerous bug fixes and performance enhancements. For a list of specific bugs that were fixed, see Resolved Issues.

These changes and enhancements are in addition to those in vFabric GemFire Native Client 3.6.0, vFabric GemFire Native Client 3.6.2, and vFabric GemFire Native Client 3.6.3.

Resolved Issues

This section lists bugs that are fixed in vFabric GemFire Native Client 3.6.4 and that are resolved in the VMware bug tracking system.

  • Ticket #758: Added support for password-protected PEM files for SSL. Resolved the case where a locator is started with SSL and client is non-SSL.
  • Ticket #766: When using SSL, a non-SSL client threw a ClasscastException when trying to connect to an SSL server. Added a check to read the acceptance code. If code is 21 and client is not SSL-enabled, AuthenticationRequiredException is thrown.
  • Ticket #770: A function execution exception sent as part of a result was not handled properly in the C# API. Function execution now handles ResultSender.sendException(). Added public API documentation for this change.
  • Ticket #771: Threadpool for getall can corrupt data. This issue was resolved.
  • Ticket #772: PRSingleHop fixes and improvements. If buckets are not created on the server, the client does not fetch metadata again. If server connection is not found, a server connection is not created, which eliminates the extra hop. Fixed PR stats that were not working properly. Now use server name returned by locator and no longer use Utils::convertHostToCanonicalForm. Removed lock while looking for prSingleHopMeta data.
  • Ticket #786: Now onRegion() call sends a request to the server that has first filter key.
  • Ticket #787: When creating a connection, the client connection pool no longer holds lock.
  • Ticket #794: Incorrect SSL trust store certificate PEM file handling no longer causes connection errors with servers and locators.
  • Ticket #812: The client now initializes PDX metadata before sending it to server.
  • Ticket #817: Added GetClassName to .NET C# API in PdxInstance to retrieve class type of PDXInstance.
  • Ticket #821: Fixed inconsistent behavior with PdxInstance. Removed statement that was not supported for cacheless region and catch exception during PdxInstance verification for any error/exception.
  • Ticket #829: Initialize SSL-Context only once.
  • Ticket #836: Missing key from server is no longer placed in local cache when doing getall.

Known Issues

This section lists known issues with vFabric GemFire Native Client 3.6.4 that have been registered as bugs in the VMware bug tracking system.

  • Ticket #617: MapEntry::LRUProperties called for non-LRU MapEntry.
  • Ticket #841: SIGABRT under gemfire::MapEntryImpl::getLRUProperties() during eviction.