1. GemStone/S 64 Bit 3.2.10 Release Notes

Overview

GemStone/S 64 Bit 3.2.10 is a new version of the GemStone/S 64 Bit object server. This release fixes a number of bugs, and adds a new configuration parameter; we recommend everyone using or planning to use GemStone/S 64 Bit v3.2.x upgrade to this new version.

These release notes provide changes between the previous version of GemStone/S 64 Bit, version 3.2.9, and version 3.2.10. If you are upgrading from a version prior to 3.2.9, review the release notes for each intermediate release to see the full set of changes.

For installation, upgrade and conversion instructions, use the Installation Guide for version 3.2.6.

Supported Platforms

Platforms for Version 3.2.10

GemStone/S 64 Bit version 3.2.10 is supported on the following platforms:

  • Solaris 10 and 11 on SPARC
  • Solaris 10 on x86
  • AIX 6.1, TL1, SP1, and AIX 7.1
  • Red Hat Linux ES 6.4 and 6.5, Ubuntu 12.04, and SUSE Linux Enterprise 12, on x86
  • Mac OSX 10.6.8 (Snow Leopard), with Darwin 10.8.0 kernel, on x86

For more information and detailed requirements for supported platforms, please refer to the GemStone/S 64 Bit Installation Guide for that platform.

GBS Versions

The following versions of GBS are supported with GemStone/S 64 Bit version 3.2.10. You must use GBS version 7.6.1 or later for VisualWorks, or 5.4.2 or later for VA Smalltalk with GemStone/S 64 Bit v3.2.10.

GBS version 7.6.1

VisualWorks
7.10.1

32-bit

VisualWorks
7.10.1

64-bit

VisualWorks

7.9.1

32-bit

  • Windows 8,
    Windows 2008 R2 and Windows 7
  • Solaris 10 on SPARC
  • Ubuntu 12.04, RedHat Linux ES 6.4 and 6.5, and SUSE Linux ES 12
  • Windows 8,
    Windows 2008 R2 and Windows 7
  • Solaris 10 on SPARC
  • Ubuntu 12.04 and
    RedHat Linux ES 6.4 and 6.5, and SUSE Linux ES 12
  • Windows 2008 R2 and Windows 7
  • Solaris 10 on SPARC
GBS version 5.4.2

VA Smalltalk
8.6

VA Smalltalk
8.5.2

  • Windows 8, Professional or above
  • Windows 2008 R2
  • Windows 7, Professional or above
  • Windows 2008 R2
  • Windows 7

For more details on supported GBS and client Smalltalk platforms and requirements, see the GemBuilder for Smalltalk Installation Guide for that version of GBS.

VSD Version

The GemStone/S 64 Bit v3.2.10 distribution includes VSD version 5.0.1, which is the same version as provided with the version 3.2.9 of GemStone/S 64 Bit, v3.2.9.

Changes in this Release

New configuration parameter

The following configuration parameter has been added. This allows errors such as out-of-range values to prevent the process from running rather than to use the default value.

CONFIG_WARNINGS_FATAL
If TRUE then any warning about invalid or out of range entries in a configuration file is treated as a fatal error terminating the process (Gem or Stone) that is reading the file. The last occurrence of this parameter in the configuration file controls the handling of errors. If the last occurrence is TRUE, then any warnings from parsing preceding configuration parameters are treated as fatal.

Default: FALSE

Bugs Fixed

The following bugs have been fixed in v3.2.10:

Risk of SEGV during automatic index update

When an application modifies an instance variable of an object that participates in an index, the index is automatically updated. If this value is a committed object that is not currently in temporary object memory, it is possible for this to SEGV. (#45742)

In-memory indexes disappeared on abort under certain memory conditions

When a modified index is represented in memory in certain ways, and the session aborts, it was incorrectly treated as if it were a uncommitted index, and removed from the VM. This did not affect the committed state of the index. (#45689)

Slow reclaim performance

Under some circumstances, an internal value used by the ReclaimGem may become stale, resulting in the Reclaim Gem threads using CPU but without making progress for 5-minute intervals. (#45720)

Further fixes for AlmostOutOfMemory during recursion to Smalltalk

If an AlmostOutOfMemory was signalled while the process had recursed from C back into Smalltalk, it was not correctly deferred or handled. This resulted in an error that prevented commit, with an uninformative message "ErrorC during index Recursion to Smalltalk".

Version 3.2.9 included fixes for this that did not entirely address the problems; there are further fixes in v3.2.10. (#45633)

Socket leak in NetLDI after failed fork

During the process of the NetLDI forking a child process, if there is a failure in certain paths of the fork sequence, the socket that had been created was not cleaned up. This socket leak eventually resulted in the NetLDI running hot. (#45738)

GbsAuthErrSegRead when GEM_READ_AUTH_ERR_STUBS = TRUE

When GEM_READ_AUTH_ERR_STUBS is set to TRUE, read authorization errors on the client should appear as UnauthorizedObjectStub object, and not trigger an error. However, in a case where a readable object is replicated on the client, and another session changes the authorization so the client no longer has read access, the client saw an GbsAuthErrSegRead error on their next commit/abort. (#45695)

Linux cache statistics PercentCpu* stats may go out of range

System cache statistics such as PercentCpuActive, PercentCpuIdle, etc., could be reported as greater than 100 or less than 0. (#45729)

Additional fixes for potentially serious errors

Code paths have been found and fixed in which an error may occur during commit, potentially resulting in SEGV (#45676); and a buffer underflow that could potentially cause packet errors. (#45717)