Skip to content

upgradeStone fails (referencing seaside.gemstone.com) for a stone built using a custom script #280

@dalehenrich

Description

@dalehenrich

This script is the custom class creation script:

#!/bin/bash
#
# script based on sample from Marten Feldtmann (GESS Software)
#
usage() {
  cat <<HELP

USAGE: $(basename $0) <db-name>
Updates the product software

EAXMPLES
  $(basename $0) webcati

HELP
}

if [ $# -ne 1 ]; then
  usage; exit 1
fi
source $GS_HOME/bin/defGsDevKit.env
source $GS_HOME/server/stones/$1/defStone.env $1
if [ -s $GEMSTONE/seaside/etc/gemstone.secret ]; then
    . $GEMSTONE/seaside/etc/gemstone.secret
else
    echo 'Missing password file $GEMSTONE/seaside/etc/gemstone.secret'
    exit 1
fi
cat << EOF | $GEMSTONE/bin/topaz -l -u product_update
set user DataCurator pass $GEMSTONE_CURATOR_PASS gems $GEMSTONE_NAME
iferror where
login
doit
Gofer new
  package: 'GsUpgrader-Core';
  url: 'http://ss3.gemtalksystems.com/ss/gsUpgrader';
  load.
(Smalltalk at: #GsUpgrader) upgradeGrease.
%
doit
"Install GLASS from github"
GsDeployer deploy: [
 Metacello new
  baseline: 'GLASS1';
  repository: 'github://glassdb/glass:master/repository';
  get.
 Metacello new
  baseline: 'GLASS1';
  repository: 'github://glassdb/glass:master/repository';
  onLock: [:ex | ex honor ];
  load: 'default' ].
%
commit
EOF

This is the upgradeStone invocation:

upgradeStone aaa_340 aaa_340_351 3.5.1

Here is the relevant part of the upgradeSeasideImage.log file (killed job during retry of download to produce the stack):

--------------------
Starting Standard GsDevKit upgrade: prepare gsdevkit image as DataCurator
--------------------
Prepare gsdevkit image
	update dbf history for upgrade start
Prepare gsdevkit - patch bug 45952
Prepare gsdevkit - create existing configuration list
	create existing configuration list (commit)
		ConfigurationOfGsMisc
		ConfigurationOfGsCore
	existing configuration collected (2)
Prepare gsdevkit - enableSessionMethods
	session methods enabled (commit)
Prepare gsdevkit - clear Monticello caches
	Monticello caches cleared (commit)
Prepare gsdevkit - Metacello caches NOT cleared
		Patching ...Behavior>>compileMethod:category:
	unload 2.x only packages
	reset Monticello package registry
Prepare gsdevkit - reset existing global state
	update dbf history for upgrade finish
Prepare gsdevkit - load GsDevKit application code
	load BaselineOfMetacello and BaselineOfGLASS1 (default)
	removing configuration classes
		ConfigurationOfGsMisc
		ConfigurationOfGsCore
	done removing configuration classes (2)
--------------------
		Reloading Project 'Metacello'
--------------------
--transcript--'Fetched -> BaselineOfMetacello-EstebanLorenzano.97 --- github://dalehenrich/metacello-work:master/repository [a7e9323:master] --- github://dalehenrich/metacello-work:master/repository'
--transcript--'Loaded -> BaselineOfMetacello-EstebanLorenzano.97 --- github://dalehenrich/metacello-work:master/repository [a7e9323:master] --- github://dalehenrich/metacello-work:master/repository'
--transcript--'Fetched -> BaselineOfMetacello-EstebanLorenzano.97 --- github://dalehenrich/metacello-work:master/repository [a7e9323:master] --- github://dalehenrich/metacello-work:master/repository'
--transcript--'Loaded -> BaselineOfMetacello-EstebanLorenzano.97 --- github://dalehenrich/metacello-work:master/repository [a7e9323:master] --- github://dalehenrich/metacello-work:master/repository'
--transcript--'Loading baseline of BaselineOfMetacello...'
--transcript--'Fetched -> BaselineOfFileTree-dkh.4 --- github://dalehenrich/filetree:gemstone2.4/repository [d7eee41:gemstone2.4] --- github://dalehenrich/filetree:gemstone2.4/repository'
--transcript--'Loaded -> BaselineOfFileTree-dkh.4 --- github://dalehenrich/filetree:gemstone2.4/repository [d7eee41:gemstone2.4] --- github://dalehenrich/filetree:gemstone2.4/repository'
--transcript--'Fetched -> Metacello-Base-topa.124 --- github://dalehenrich/metacello-work:master/repository [a7e9323:master] --- github://dalehenrich/metacello-work:master/repository'
--transcript--'Project: Gofer stable'
--transcript--' [1.0.5.1]'
--transcript--'Retrying ''http://seaside.gemstone.com/ss/metacello/?C=M;O=D'' (1) ''SpSocketError: Socket connect error: connect(14,64.20.104.5,port=80) failed with errno=110,ETIMEDOUT, Connection timed out'''

[Sending soft break]

[Sending hard break]
Error 6004 , a Break occurred (error 6004), A hard break was received. (Break)
ERROR: UNEXPECTED ERROR
topaz> time
 01/13/2020 13:33:46.341 PST
topaz > exec iferr 1 : stk 
==> 1 Break (AbstractException) >> _signalFromPrimitive: @5 line 15
2 ProcessorScheduler >> _checkForExpiredDelays: @1 line 1
3 ProcessorScheduler >> _reapEvents:honorOob:   @38 line 36
4 ProcessorScheduler >> _findReadyProcess:      @2 line 10
5 ProcessorScheduler >> _reschedule:            @13 line 20
6 ProcessorScheduler >> _waitForSocket:         @8 line 15
7 GsSocket >> writeWillNotBlockWithin:          @20 line 39
8 GsSocket >> connectTo:on:timeoutMs:           @27 line 32
9 GsSocket >> connectTo:on:                     @2 line 9
10 HTTPSocket (SpSocket) >> connectTo:           @5 line 6
11 HTTPSocket class (SpSocket class) >> connectToServerOnHost:port: @6 line 7
12 HTTPSocket class >> httpGetDocument:args:accept:request: @62 line 38
13 HTTPSocket class >> httpGet:args:accept:request: @3 line 6
14 HTTPSocket class >> httpGet:args:user:passwd: @12 line 5
15 [] in MCPlatformSupport class >> readStreamForUrl:user:passwd:do: @15 line 9
16 ExecBlock0 (ExecBlock) >> on:do:              @3 line 44
17 MCPlatformSupport class >> readStreamForUrl:user:passwd:do: @6 line 14
18 MCHttpRepository >> allFileNames              @7 line 3
19 MCHttpRepository (MCFileBasedRepository) >> readableFileNames @3 line 2
20 MCHttpRepository (MCFileBasedRepository) >> allVersionNames @3 line 2
21 [] in MCFileBasedRepository >> goferReferences @9 line 3
22 ExecBlock0 (ExecBlock) >> on:do:              @3 line 44
23 MCHttpRepository (MCFileBasedRepository) >> goferReferences @3 line 4
24 [] in Gofer >> basicReferencesIn:             @7 line 2
25 ExecBlock0 (ExecBlock) >> on:do:              @3 line 44
26 MetacelloGofer (Gofer) >> basicReferencesIn:  @3 line 3
27 [] in MetacelloGofer >> basicReferencesIn:    @14 line 13
28 [] in MetacelloPlatform >> stackCacheFor:cacheClass:at:doing: @18 line 14
29 [] in MetacelloPlatform >> useStackCacheDuring:defaultDictionary: @14 line 9
30 ExecBlock0 (ExecBlock) >> on:do:              @3 line 44
31 MetacelloGemStonePlatform (MetacelloPlatform) >> useStackCacheDuring:defaultDictionary: @10 line 10
32 MetacelloGemStonePlatform (MetacelloPlatform) >> stackCacheFor:cacheClass:at:doing: @3 line 4
33 MetacelloGofer >> basicReferencesIn:          @10 line 9
34 [] in Gofer >> allResolvedIn:                 @10 line 5
35 Dictionary (AbstractDictionary) >> at:ifAbsentPut: @7 line 14
36 MetacelloGofer (Gofer) >> allResolvedIn:      @6 line 5
37 [] in Gofer >> allResolved                    @12 line 7
38 Array (Collection) >> do:                     @5 line 10
39 MetacelloGofer (Gofer) >> allResolved         @6 line 7
40 MetacelloGoferPackage (GoferReference) >> resolveAllWith: @3 line 4
41 MetacelloFetchingMCSpecLoader (MetacelloCommonMCSpecLoader) >> resolvePackageSpecReferences:gofer: @23 line 16
42 [] in MetacelloCommonMCSpecLoader >> retryingResolvePackageSpecReferences:gofer: @36 line 12
43 ExecBlock0 (ExecBlock) >> on:do:              @3 line 44
44 MetacelloFetchingMCSpecLoader (MetacelloCommonMCSpecLoader) >> retryingResolvePackageSpecReferences:gofer: @16 line 13
45 [] in MetacelloFetchingMCSpecLoader >> linearLoadPackageSpec:gofer: @12 line 21
46 MetacelloGemStonePlatform (MetacelloPlatform) >> do:displaying: @2 line 3
47 MetacelloFetchingMCSpecLoader >> linearLoadPackageSpec:gofer: @6 line 3
48 MetacelloPackageSpec >> loadUsing:gofer:      @2 line 3
49 [] in MetacelloCommonMCSpecLoader >> linearLoadPackageSpecs:repositories: @14 line 6
50 OrderedCollection (Collection) >> do:         @5 line 10
51 MetacelloFetchingMCSpecLoader (MetacelloCommonMCSpecLoader) >> linearLoadPackageSpecs:repositories: @6 line 6
52 [] in MetacelloFetchingMCSpecLoader >> atomicLoadPackageSpecs:repositories: @8 line 4
53 ExecBlock0 (ExecBlock) >> ensure:             @2 line 12
54 MetacelloLoaderPolicy >> pushLoadDirective:during: @7 line 7
55 MetacelloLoaderPolicy >> pushAtomicLoadDirectivesDuring:for: @3 line 3
56 MetacelloFetchingMCSpecLoader >> atomicLoadPackageSpecs:repositories: @4 line 4
57 MetacelloFetchingMCSpecLoader (MetacelloCommonMCSpecLoader) >> load @12 line 5
58 MetacelloMCVersionSpecLoader >> load          @14 line 21
59 MetacelloMCVersion >> executeLoadFromArray:   @10 line 7
60 [] in MetacelloMCVersion >> fetchRequiredFromArray: @34 line 11
61 [] in MetacelloPlatform >> useStackCacheDuring:defaultDictionary: @14 line 9
62 ExecBlock0 (ExecBlock) >> on:do:              @3 line 44
63 MetacelloGemStonePlatform (MetacelloPlatform) >> useStackCacheDuring:defaultDictionary: @10 line 10
64 [] in MetacelloMCVersion >> fetchRequiredFromArray: @30 line 11
65 ExecBlock0 (ExecBlock) >> ensure:             @2 line 12
66 [] in MetacelloMCVersion >> fetchRequiredFromArray: @22 line 12
67 MetacelloGemStonePlatform (MetacelloPlatform) >> do:displaying: @2 line 3
68 MetacelloMCVersion >> fetchRequiredFromArray: @18 line 7
69 [] in MetacelloMCProjectSpec >> loadVersion:  @71 line 41
70 [] in MetacelloPlatform >> useStackCacheDuring:defaultDictionary: @14 line 9
71 ExecBlock0 (ExecBlock) >> on:do:              @3 line 44
72 MetacelloGemStonePlatform (MetacelloPlatform) >> useStackCacheDuring:defaultDictionary: @10 line 10
73 MetacelloMCConfigurationOfProjectSpec (MetacelloMCProjectSpec) >> loadVersion: @22 line 25
74 MetacelloProjectSpecForLoad >> performLoad    @29 line 21
75 MetacelloMCNamelessProjectSpec (MetacelloGenericProjectSpec) >> load @6 line 4
76 MetacelloProjectReferenceSpec >> loadUsing:gofer: @6 line 6
77 [] in MetacelloCommonMCSpecLoader >> linearLoadPackageSpecs:repositories: @14 line 6
78 OrderedCollection (Collection) >> do:         @5 line 10
79 MetacelloFetchingMCSpecLoader (MetacelloCommonMCSpecLoader) >> linearLoadPackageSpecs:repositories: @6 line 6
80 [] in MetacelloFetchingMCSpecLoader >> linearLoadPackageSpecs:repositories: @8 line 4
81 ExecBlock0 (ExecBlock) >> ensure:             @2 line 12
82 MetacelloLoaderPolicy >> pushLoadDirective:during: @7 line 7
83 MetacelloLoaderPolicy >> pushLinearLoadDirectivesDuring:for: @3 line 3
84 MetacelloFetchingMCSpecLoader >> linearLoadPackageSpecs:repositories: @4 line 4
85 MetacelloFetchingMCSpecLoader (MetacelloCommonMCSpecLoader) >> load @16 line 7
86 MetacelloMCVersionSpecLoader >> load          @14 line 21
87 MetacelloMCVersion >> executeLoadFromArray:   @10 line 7
88 [] in MetacelloMCVersion >> fetchRequiredFromArray: @34 line 11
89 [] in MetacelloPlatform >> useStackCacheDuring:defaultDictionary: @14 line 9
90 ExecBlock0 (ExecBlock) >> on:do:              @3 line 44
91 MetacelloGemStonePlatform (MetacelloPlatform) >> useStackCacheDuring:defaultDictionary: @10 line 10
92 [] in MetacelloMCVersion >> fetchRequiredFromArray: @30 line 11
93 ExecBlock0 (ExecBlock) >> ensure:             @2 line 12
94 [] in MetacelloMCVersion >> fetchRequiredFromArray: @22 line 12
95 MetacelloGemStonePlatform (MetacelloPlatform) >> do:displaying: @2 line 3
96 MetacelloMCVersion >> fetchRequiredFromArray: @18 line 7
97 [] in MetacelloMCVersion >> doLoadRequiredFromArray: @28 line 10
98 ExecBlock0 (ExecBlock) >> ensure:             @2 line 12
99 MetacelloMCVersion >> doLoadRequiredFromArray: @23 line 16
100 MetacelloMCVersion >> load                    @4 line 3
101 [] in MetacelloScriptEngine >> load:onProjectDownGrade:onProjectUpgrade: @18 line 15
102 ExecBlock0 (ExecBlock) >> on:do:              @3 line 44
103 [] in MetacelloScriptEngine >> handleNotificationsForAction: @21 line 6
104 ExecBlock0 (ExecBlock) >> on:do:              @3 line 44
105 [] in MetacelloScriptEngine >> handleNotificationsForAction: @13 line 14
106 ExecBlock0 (ExecBlock) >> on:do:              @3 line 44
107 [] in MetacelloScriptEngine >> handleNotificationsForAction: @7 line 20
108 ExecBlock0 (ExecBlock) >> on:do:              @3 line 44
109 MetacelloScriptEngine >> handleNotificationsForAction: @3 line 24
110 [] in MetacelloScriptEngine >> load:onProjectDownGrade:onProjectUpgrade: @7 line 5
111 ExecBlock0 (ExecBlock) >> ensure:             @2 line 12
112 MetacelloProjectRegistration class >> copyRegistryRestoreOnErrorWhile: @9 line 14
113 MetacelloScriptEngine >> load:onProjectDownGrade:onProjectUpgrade: @3 line 3
114 MetacelloScriptEngine >> load:                @2 line 3
115 MetacelloScriptEngine (Object) >> perform:withArguments: @1 line 12
116 [] in MetacelloScriptExecutor >> execute:     @39 line 15
117 [] in MetacelloScriptExecutor >> executeString:do: @15 line 5
118 Array (Collection) >> do:                     @5 line 10
119 MetacelloScriptImageExecutor (MetacelloScriptExecutor) >> executeString:do: @9 line 5
120 Unicode7 (String) >> execute:against:         @2 line 2
121 MetacelloScriptImageExecutor (MetacelloScriptExecutor) >> execute: @7 line 9
122 Metacello >> execute:args:                    @9 line 5
123 Metacello >> load                             @2 line 2
124 [] in GsuAbstractGsDevKit >> _reloadProjectNamed:projectSpec:loads: @78 line 46
125 [] in GsDeployer >> deploy:                   @22 line 8
126 ExecBlock0 (ExecBlock) >> on:do:              @3 line 44
127 [] in GsDeployer >> deploy:                   @8 line 9
128 [] in MCPlatformSupport class >> commitOnAlmostOutOfMemoryDuring: @12 line 7
129 ExecBlock0 (ExecBlock) >> ensure:             @2 line 12
130 MCPlatformSupport class >> commitOnAlmostOutOfMemoryDuring: @7 line 8
131 [] in GsDeployer >> mcPlatformSupportDo:      @14 line 11
132 ExecBlock0 (ExecBlock) >> ensure:             @2 line 12
133 GsDeployer >> mcPlatformSupportDo:            @10 line 12
134 GsDeployer >> deploy:                         @3 line 3
135 GsDeployer class >> autoMigrate:              @4 line 13
136 GsDeployer class >> deploy:                   @2 line 12
137 GsuGsDevKit_3_5_x_StdUpgrade (GsuAbstractGsDevKit) >> _deploy: @13 line 14
138 GsuGsDevKit_3_5_x_StdUpgrade (GsuAbstractGsDevKit) >> _reloadProjectNamed:projectSpec:loads: @63 line 42
139 [] in GsuAbstractGsDevKit >> _loadApplicationLoadSpecs: @39 line 24
140 Array (Collection) >> do:                     @5 line 10
141 GsuGsDevKit_3_5_x_StdUpgrade (GsuAbstractGsDevKit) >> _loadApplicationLoadSpecs: @4 line 19
142 GsuGsDevKit_3_5_x_StdUpgrade (GsuAbstractGsDevKit) >> loadApplicationLoadSpecs @28 line 22
143 GsuGsDevKit_3_5_x_StdUpgrade >> prepareGsDevKitImage_loadApplicationCode @3 line 10
144 GsuGemStone_3_4_x_Release (GsuAbstractGemStoneRelease) >> prepareGsDevKitImage_loadApplicationCode: @2 line 3
145 GsuGsDevKit_3_5_x_StdUpgrade (GsuAbstractGsDevKitUpgrade) >> prepareGsDevKitImage @20 line 33
146 Executed Code                                 @6 line 5
147 GsNMethod class >> _gsReturnToC               @1 line 11
  [GsProcess 195218689]

Once final bugfix is determined, will need to:

  • fix the GsDevKit_upgrade bug
  • update the upgradeSeasideImage script for GemStone 3.5.2 to include the fix
  • add an upgrade test case using this stone creation script to the GsDevKit_home travis tests
  • add the GsDefKit_home test case to the internal GemStone GsDevKit_home test suite

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions