GemStone/S 64 Bit Release Notes

  • 1. Release Notes for 3.7.1

    • Overview

    • Supported Platforms

      • Platforms for Version 3.7.1

      • GemBuilder for Smalltalk (GBS) Versions

      • VSD Version

    • 1.1 Administrative Changes

      • Updated Library Versions

      • Distribution changes

        • gcisup_ts.hf

        • GemStone now includes Rowan v3.x as well as Rowan v2.x

      • Linux on ARM now supported for production use

        • Native code on Linux/ARM

      • Native code on Mac

      • Preliminary Support for Raspberry Pi for Development

      • Tranlogging Changes

      • Extent pregrow on ZFS file systems

      • Configurable location of services.dat lookup file

        • Added startnetldi -Q argument

      • startnetldi now requires port to match GEMSTONE_NRS_ALL

      • Solo logins temporary files renamed

      • Upgrade for customer-defined special classes

      • Simplified finding reference path methods

      • Added Repository analysis methods

      • Backup and Restore Changes

        • Backup, Restore and other scans report progress

        • Performance improvement in restoring a zipped tranlog

        • restoreFromBackups:threads: now accepts filename

      • Hot Standby-related changes and bug fixes

        • Tranlog position may have been inconsistent between master and slave

        • failOverStatus now includes if logreceiver is connected

      • Avoid running out of stack while handling an AlmostOutOfStack error

        • GEM_MAX_SMALLTALK_STACK_DEPTH maximum changed

      • Utility Changes

        • startstone, pageaudit -W to disable cache warming

        • Added Topaz SET commands

        • gemnetobject script cleanup

      • GCI Changes

        • GciTsAddOopsToNsc

        • GciTsFetchNamedOops

        • GciTsFetchVaryingOops

        • GciTsStoreIdxOops

        • GciTsStoreNamedOops

    • 1.2 GemStone Smalltalk Changes

      • Instance-variable specific dbTransient feature

        • Behavior class definition changed

        • SessionTemps no longer stubs contents

      • TreeDictionary and TreeSet added

      • Now possible to step into accessor methods

      • ProfMonitor object creation profiling enhancements and bug fixes

        • Object creation profiling now includes profiling of some kernel classes

        • ProfMonitor object creation profiling reported sample count incorrectly

      • Avoiding performance impact of process host statistics

      • FileSystem changes and bug fixes

        • ZnStream, ZnCharacterEncoder hierarchy changes; ZnObject removed

        • Manual flush no longer required for FileReference write streams

        • Directory creation errors were FsEACCES, now FilePermissionDenied

        • Added FileSystem-related methods

        • FileSystem iteration over NFS-mounted directories may miss reporting some files

        • Symlinked directories and files omitted from results

      • GsTsExternalSession forkAndDetachBlock:

        • Added GCI flag

      • GsTestCase added methods

      • IndexManager new methods

      • Reporting tranlog positions

      • Other added and moved methods

        • allInstances

        • Array >> pairsDo:

        • Behavior >> extractSelector:

        • BlockClosure >> doWhileFalse:

        • CharacterCollection >> substringsSpace

        • Duration >> asMilliseconds

        • Integer >> >> shiftAmount

        • SmallInteger >> permutedHashA:c:d:

        • String >> evaluateInContext:

        • System class >> waitForDebugWithAbort

      • Removed methods

    • 1.3 Changes in Encrypted extents, tranlogs, and backups

      • Support for up to 24 encryption keys

        • System class >> repositoryPublicKey renamed

      • Path requirements and -K

      • Utility Changes related to encrypted DBFs

        • copydbf argument changes

        • copydbf may have prompted for passphrase

        • copydbf -X, -Y output filenames did not include extension

        • updatesecuredbf argument changes

        • updatesecuredbf output modified

        • startstone argument changes

  • 2. Bug Fixes

    • Sending #value to special resulted in SEGV

    • startstone recovery may fail with tranlogs on raw partitions

    • Stone may shutdown on checkpoint when tranlog disks are full

    • Garbage collection issues

      • Performance regression in markForCollection

      • markForCollectionWait: with argument of -1 gets prim failure

      • reclaimAll may fail to reclaim some dead

    • C mutex deadlock possible from ProfMonitor/SIGUSR1

    • NetLDI issues

      • NetLDI shutdown timing issue resulted in unable to restart

      • netldid executes without $GEMSTONE but does not function

    • GsSecureSocket instance method did not properly used chained certificate file

    • GsSocket >> writeWillNotBlockWithin: does not handle nil returned by writeWillNotBlock

    • Unicode string copyReplaceAll:with:, insertAll:at:, broken with String arguments

    • Collection issues

      • Array >> replaceFrom:to:with:startingAt: may not have copied elements correctly

      • Dictionary become: does not update internal variables

    • Numeric and Time related issues

      • Strings with leading '-0.' lose sign when converted using asNumber or Number fromString/Stream:

      • Duration new created an uninitialized instance

    • Issues related to upgrade

      • upgradeImage reports success even if upgrade fails

      • Excessive attempts to start AdminGem during upgrade

      • copydbf returns wrong version for secondary extents after upgrade

      • Session methods must be disabled for upgrade

      • Upgrade created instances of ObsoleteMetaclass

    • GsNMethod >> recompileFromSource loses method category

    • perform:withArguments: may crash on bad arguments

    • Spurious OutOfMemory when in-memory pom_gen scavenge fails

    • Fileout format reverted to older style in v3.7

    • GsExternalSession >> executeString: fails if attempting to return an empty String

    • defaultGemNRSFromCurrent may be incorrect

    • GLASS/Seaside auto-migrate may error after GC operation

    • ensure blocks in superDoit scripts do not execute on error

    • Issues with GsProcess terminate

      • Overlapping terminate request semantics

      • SEGV when a terminated GsProcess is sent terminate

    • Gem failed to respond to SIGTERM on 1-core VM

    • CodeModificaton required to list Pragmas with session methods enabled

    • waitstone may return before Stone is ready to accept logins

    • Array with:* primitive failure error reports incorrect

Copyright 2024 GemTalk Systems