GemStone/S 64 Bit 3.2.11 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.10, and version 3.2.11. If you are upgrading from a version prior to 3.2.10, 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.
GemStone/S 64 Bit version 3.2.11 is supported on the following platforms:
For more information and detailed requirements for supported platforms, please refer to the GemStone/S 64 Bit Installation Guide for that platform.
The following versions of GBS are supported with GemStone/S 64 Bit version 3.2.11. 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.11.
On networks with high latency, it was possible for the internal timeout in the logreceiver to be exceeded, preventing the logreceiver from receiving any tranlog records.
Now, the timeout on the logreceiver is configurable using the new -t option.
It is now possible for the NetLDI to be configured with a particular directory for child log files, and specify this directory within the Gem NRS #log directive. This allows the name of the Gem log file to be controlled by the Gem, and the directory location to be controlled by the NetLDI.
There are two parts to this change
It is not critical to include a path divider after a %D; the code ensure that the expansion of %D ends with a '/' character.
If no -D argument was provided in the NetLDI, and %D is specified in Gem NRS, the %D is treated like an empty string, and a warning is printed to the NetLDI log file.
For example, the following examples start a NetLDI with a log directory of $GEMSTONE/logs/:
startnetldi -g -a gsadmin -D $GEMSTONE/logs gs64ldi
and configure a topaz maintenance script to write its log file to this directory:
topaz> set gemnetid !#log:%D/MFC-%P.log!gemnetobject
Note that %P in the NRS stands for the PID; other such variables are documented in the System Administration Guide, Appendix C.
Login parameters for the Stone name and the Gem service may each specify an NRS that includes the #log: directive. Now, these are internally retained separately, so the Stone’s NRS controls the log files for processes started on the Stone’s node, and the Gem’s NRS controls the log files for log files for processes on the Gem’s node.
A method had been added to allow you to pass in the precise intended configuration parameters to start up a mid-level cache.
System class >> midLevelCacheConnect: hostName options: optionsArray
This is similar to midLevelCacheConnect:cacheSizeKB:maxSessions:, but rather than specifying just two of the mid-level cache parameters, the full set of configuration parameters can be specified. optionsArray is an Array containing pairs specifying configuration parameters and values.
For example, the following are equivalent operations:
System midLevelCacheConnect: 'MyHost' cacheSizeKB: 1000000
maxSessions: 50.
System midLevelCacheConnect: 'MyHost' options:
{'SHR_PAGE_CACHE_SIZE_KB' . '1GB' .
'SHR_PAGE_CACHE_NUM_PROCS' 50 }.
Options for the command line include:
an Integer representing KB, or a String with a units suffix like '3GB' or '3000MB' |
|
Configuration parameters that are not specified on the command line are taken from the configuration file of the Gem that initiated the mid-level cache.
The following bugs have been fixed in v3.2.11:
Introduced by changes in 3.2.10
When the configuration file used by the Gem has an invalid value for the configuration file setting SHR_PAGE_CACHE_PERMISSIONS, it causes a fatal error and prevents the Gem from running. (#45745)
This issues was exposed by the changes to add the new CONFIG_WARNINGS_FATAL configuration parameter, but the error occurs irrespective of the CONFIG_WARNINGS_FATAL setting.
When a multithreaded backup was writing a compressed full backup to multiple files, and encounters an error, the cleanup code performed a thread-unsafe operation, which could result in an SEGV. (#45767)
The HugePages cache statistics on Linux reported values in pages, not in the number of KB. Now, the values are reported in KB as documented. (#45793).
Affected statistics are HugePagesTotalKB, HugePagesFreeKB, HugePagesRsvdKB and HugePagesSurpKB.
Attempting to read an object whose security policy does not allow reading usually produces a SecurityError with number 2115. However, sending a message to an UnauthorizedObjectStub yielded a SecurityError with number 2374. GBS relies on error numbers to determine the GBS error class, and returned the incorrect class. (#45760)
Attempting to execute the method System class >> readHiddenSet:fromSortedFile: resulted in an error that the bitmap file was corrupt. (#45801)
When performing conversion of a repository containing GemConnect from 2.4.x to 3.2.x, the upgradeImage step could error. This was the result of attempting to install kernel class documentation when the relevant methods had not yet been recompiled. (#45751)