Cannot load Seaside anymore in a just-migrated GemStone [WAS] Re: Zinc 2.4.3 on Gemstone

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Cannot load Seaside anymore in a just-migrated GemStone [WAS] Re: Zinc 2.4.3 on Gemstone

GLASS mailing list
Hi guys,

I have a weird scenario I cannot solve. I am trying to load my app code (together with all it's dependencies) in a just migrated stone (from GemStone 3.1.0.4 to GemStone 3.2.9). I performed all the steps of the migration.  Yet, I have an error, pasted below. However, if I run the same code to load my app in a fresh 3.2.9 extent, that works perfectly. It only fails in my migrated (from 3.1.0.4) stone.

The problem is in 

WAWalkbackErrorHandler class >> initialize
WAAdmin applicationExceptionHandlingDefaults at: #exceptionHandler put: self

It fails because the 

WAConfiguration >> attributeAt: aSymbol
^ self attributeAt: aSymbol ifAbsent: [ WAAttributeNotFound signalWithKey: aSymbol ]

gives a key not found. 

I did a search  in the mailing list and found related threads: 


But none show a solution. 

And yes, it is obvious it will fail because:

WAAdmin applicationExceptionHandlingDefaults allAttributes ->  anIdentityDictionary( )

Also, as you can see, the result of WAAdmin applicationExceptionHandlingDefaults has no parent or anything:

Inspect aWASharedConfiguration/
--------------------
.                     -> aWASharedConfiguration
(class)@              -> WASharedConfiguration
(oop)@                -> 1169561601
(committed)@          -> true
cachedSearchContexts@ -> anIdentityDictionary( #'exceptionHandler'->aWAAttributeSearchContext)
expressions@          -> aDictionary( )
name@                 -> 'Application Exception Handling Defaults'
parents@              -> anOrderedCollection( )


I even tried the re-initialization of Seaside as provided by Bruno the other day:

WAAdmin unregister: 'reps'.
WAAdmin unregister: 'advisors'.
WAAdmin unregister: 'clients'.

WAGemStoneProductionErrorHandler  initialize.
WAWalkbackErrorHandler initialize.
WARemoteDebuggingWalkbackErrorHandler initialize.

[
   WADispatcher default.
   WASystemConfiguration allSubclasses
     do: [ :each | each instance buildDescription ] ]
     ensure: [ System commitTransaction ] .


Still, same error. 


Any clues? Is there  way I can re-initialize all Seaside? 


This is the stack:

aTDDebugger
--------------------
1. WAAttributeNotFound(AbstractException)>>_signalWith: @6 line 25
2. WAAttributeNotFound(AbstractException)>>signal @2 line 47
3. WAAttributeNotFound class>>signalWithKey: @4 line 4
4. [] in ExecBlock0(WAConfiguration)>>attributeAt: @2 line 2
5. IdentityDictionary>>at:ifAbsent: @5 line 8
6. WASharedConfiguration(WAConfiguration)>>attributeAt:ifAbsent: @3 line 2
7. WASharedConfiguration(WAConfiguration)>>attributeAt: @2 line 2
8. WASharedConfiguration(WAUserConfiguration)>>at:put: @2 line 7
9. WAWalkbackErrorHandler class>>initialize @3 line 2
10. MCMethodDefinition>>postload @11 line 6
11. MCMethodDefinition(MCDefinition)>>postloadOver: @2 line 2
12. [] in MCPackageLoader>>basicLoad @3 line 48
13. OrderedCollection(Collection)>>do: @5 line 10
14. OrderedCollection(Collection)>>do:displayingProgress: @2 line 3
15. [] in MCPackageLoader>>basicLoad @15 line 48
16. MCPackageLoader(ExecBlock)>>on:do: @3 line 42
17. [] in MCPackageLoader>>basicLoad @2 line 49
18. MCPackageLoader(ExecBlock)>>ensure: @2 line 12
19. MCPackageLoader>>basicLoad @11 line 51
20. [] in MCPackageLoader>>loadWithNameLike: @2 line 4
21. [] in ExecBlock0(MCPackageLoader)>>useChangeSetNamed:during: @2 line 9
22. ExecBlock0(ExecBlock)>>ensure: @2 line 12
23. MCPackageLoader>>useChangeSetNamed:during: @9 line 9
24. MCPackageLoader>>useNewChangeSetNamedLike:during: @3 line 2
25. MCPackageLoader>>loadWithNameLike: @6 line 4
26. MCVersionLoader>>load @9 line 6
27. MetacelloGoferLoad(GoferLoad)>>execute @6 line 3
28. [] in MetacelloLoadingMCSpecLoader(MetacelloCommonMCSpecLoader)>>loadPackageDirective:gofer: @5 line 17
29. [] in MetacelloLoadingMCSpecLoader(MetacelloCommonMCSpecLoader)>>loadPackageDirective:gofer: @14 line 21
30. MetacelloGemStonePlatform(MetacelloPlatform)>>do:displaying: @2 line 3
31. MetacelloLoadingMCSpecLoader(MetacelloCommonMCSpecLoader)>>loadPackageDirective:gofer: @7 line 5
32. MetacelloLinearLoadDirective(MetacelloVersionLoadDirective)>>loadPackageDirective:gofer: @4 line 4
33. MetacelloPackageLoadDirective>>loadUsing:gofer: @2 line 3
34. [] in ExecBlock1(MetacelloVersionLoadDirective)>>loadLinearLoadDirective:gofer: @2 line 3
35. OrderedCollection(Collection)>>do: @5 line 10
36. MetacelloLinearLoadDirective(MetacelloVersionLoadDirective)>>loadLinearLoadDirective:gofer: @3 line 3
37. MetacelloLinearLoadDirective>>loadUsing:gofer: @6 line 4
38. [] in ExecBlock1(MetacelloVersionLoadDirective)>>loadLinearLoadDirective:gofer: @2 line 3
39. OrderedCollection(Collection)>>do: @5 line 10
40. MetacelloLinearLoadDirective(MetacelloVersionLoadDirective)>>loadLinearLoadDirective:gofer: @3 line 3
41. MetacelloLinearLoadDirective>>loadUsing:gofer: @6 line 4
42. [] in ExecBlock1(MetacelloVersionLoadDirective)>>loadLinearLoadDirective:gofer: @2 line 3
43. OrderedCollection(Collection)>>do: @5 line 10
44. MetacelloLinearLoadDirective(MetacelloVersionLoadDirective)>>loadLinearLoadDirective:gofer: @3 line 3
45. MetacelloLinearLoadDirective>>loadUsing:gofer: @6 line 4
46. [] in ExecBlock1(MetacelloVersionLoadDirective)>>loadLinearLoadDirective:gofer: @2 line 3
47. OrderedCollection(Collection)>>do: @5 line 10
48. MetacelloLinearLoadDirective(MetacelloVersionLoadDirective)>>loadLinearLoadDirective:gofer: @3 line 3
49. MetacelloLinearLoadDirective>>loadUsing:gofer: @6 line 4
50. [] in ExecBlock1(MetacelloVersionLoadDirective)>>loadLinearLoadDirective:gofer: @2 line 3
51. OrderedCollection(Collection)>>do: @5 line 10
52. MetacelloLinearLoadDirective(MetacelloVersionLoadDirective)>>loadLinearLoadDirective:gofer: @3 line 3
53. MetacelloLinearLoadDirective>>loadUsing:gofer: @6 line 4
54. MetacelloLinearLoadDirective(MetacelloVersionLoadDirective)>>loadWithPolicy: @7 line 7
55. MetacelloLoaderPolicy>>load @6 line 4
56. MetacelloFetchingMCSpecLoader>>doLoad @4 line 3
57. [] in ExecBlock0(MetacelloMCVersion)>>doLoadRequiredFromArray: @2 line 12
58. MetacelloGemStonePlatform(MetacelloPlatform)>>do:displaying: @2 line 3
59. [] in MetacelloMCVersion>>doLoadRequiredFromArray: @7 line 12
60. MetacelloMCVersion(ExecBlock)>>ensure: @2 line 12
61. MetacelloMCVersion>>doLoadRequiredFromArray: @22 line 16
62. Array(Collection)>>loadRequiredForMetacelloMCVersion: @2 line 3
63. MetacelloMCVersion>>load: @2 line 3
64. [] in MetacelloScriptEngine>>load:onProjectDownGrade:onProjectUpgrade: @10 line 16
65. MetacelloScriptEngine(ExecBlock)>>on:do: @3 line 42
66. [] in MetacelloScriptEngine>>handleNotificationsForAction: @6 line 6
67. MetacelloScriptEngine(ExecBlock)>>on:do: @3 line 42
68. [] in MetacelloScriptEngine>>handleNotificationsForAction: @4 line 14
69. MetacelloScriptEngine(ExecBlock)>>on:do: @3 line 42
70. [] in MetacelloScriptEngine>>handleNotificationsForAction: @2 line 20
71. MetacelloScriptEngine(ExecBlock)>>on:do: @3 line 42
72. MetacelloScriptEngine>>handleNotificationsForAction: @2 line 24
73. [] in MetacelloScriptEngine>>load:onProjectDownGrade:onProjectUpgrade: @2 line 5
74. MetacelloScriptEngine(ExecBlock)>>ensure: @2 line 12
75. MetacelloProjectRegistration class>>copyRegistryRestoreOnErrorWhile: @8 line 14
76. MetacelloScriptEngine>>load:onProjectDownGrade:onProjectUpgrade: @2 line 3
77. MetacelloScriptEngine>>load: @2 line 3
78. [] in MetacelloScriptApiExecutor(MetacelloScriptExecutor)>>execute: @11 line 15
79. [] in MetacelloScriptApiExecutor>>executeString:do: @5 line 6
80. Array(Collection)>>do: @5 line 10
81. MetacelloScriptApiExecutor>>executeString:do: @6 line 4
82. String>>execute:against: @2 line 2
83. MetacelloScriptApiExecutor(MetacelloScriptExecutor)>>execute: @6 line 9
84. Metacello>>execute:args: @8 line 5
85. Metacello>>load: @2 line 2
86. [] in Executed Code
87. ExecBlock0(ExecBlock)>>ensure: @2 line 12
88. Executed Code
89. String(CharacterCollection)>>evaluateIn:symbolList:literalVars: @4 line 13
90. TDWorkspaceClientElementBuilder(TDClientSourceElementBuilder)>>evaluateString: @5 line 3
91. TDWorkspaceClientElementBuilder(TDClientSourceElementBuilder)>>doItMenuAction:selectedText: @2 line 2
92. TDWorkspaceClientElementBuilder(TDWindowBuilder)>>handleMenuActions:listElement:actionArg: @12 line 10
93. [] in TDWorkspaceClientElementBuilder(TDClientSourceElementBuilder)>>menuActionBlock @6 line 8
94. TDWorkspaceClientElementBuilder(ExecBlock)>>value:value:value:value:value: @2 line 11
95. GsNMethod class>>_gsReturnToC @1 line 1


Thanks in advance for any help. 

On Thu, Oct 15, 2015 at 1:40 PM, Gerhard Obermann <[hidden email]> wrote:
Hi,

Not really, i only found the following in my notes.

HTH
Gerhard


  • Load Seaside 3.1.x but don’t initialize Seaside Classes


| performInitialization |

performInitialization := #().

[

GsDeployer deploy: [  Metacello new

   baseline: 'Seaside3';

   repository: 'github://glassdb/Seaside31:gemstone3.1/repository';

   load: 'CI'].

] on: MCPerformPostloadNotification do: [:ex |

          (performInitialization includes: ex postloadClass theNonMetaClass name)

            ifTrue: [

              "perform initialization"

              ex resume: true ]

            ifFalse: [

              GsFile gciLogServer: ' Skip ', ex postloadClass name asString, ' initialization.'.

               ex resume: false ] ]



On Thu, Oct 15, 2015 at 5:47 PM, Mariano Martinez Peck <[hidden email]> wrote:
Hi Gerhard,

I am getting the exact same issue. Do you remember what you did to fix it?

Thanks,

On Wed, May 21, 2014 at 10:39 AM, Gerhard Obermann <[hidden email]> wrote:
Hi Dale!

I think as soon as I can load the stuff in my upgraded 3.2. DB, i can test and contribute to zink and/or Glass / Seaside 3.1.
If it wont work until tomorrow i have to stay on 3.1.0.5 for the next few months at least.

At the moment i am trying to load Seaside 3.1.1 with 
PS: To be able to load this i have loaded the Baseline packages BaselineOfGLASS1, BaselineOfSeaside3 , BaselineOfZinc manually from my forked GIT clone.

GsDeployer deploy: [ 
  Metacello new
    configuration: 'Grease';
    get.

  "Load Seaside31"
GsDeployer deploy: [ 
  Metacello new
    baseline: 'Seaside3';
    repository: 'github://glassdb/Seaside31:gemstone3.1/repository';
    load: 'CI'].


Not sure if i need to load  Metacello new
    baseline: 'GLASS1';
    repository: 'github://glassdb/glass:master/repository';
    load.
after the upgrade.

What is the difference between 
  (ConfigurationOfGLASS project version: '1.0-beta.9.1') load
and
 Metacello new
    baseline: 'GLASS1';
    repository: 'github://glassdb/glass:master/repository';
    load.

The load of the Seaside package failed with the init of 
WAWalkbackErrorHandler => initialize
WAAdmin applicationExceptionHandlingDefaults at: #exceptionHandler put: self

[1] WAAttributeNotFound (AbstractException) >> _signalWith:
inCextensionArg: nil
res: nil
.t1: a WAAttributeNotFound occurred (error 2710)
receiver: a WAAttributeNotFound occurred (error 2710)
[2] WAAttributeNotFound (AbstractException) >> signal
receiver: a WAAttributeNotFound occurred (error 2710)
[3] WAAttributeNotFound class >> signalWithKey:
aSymbol: #'exceptionHandler'
receiver: WAAttributeNotFound
[4] [] in  ExecBlock0 (WAConfiguration) >> attributeAt:
aSymbol: #'exceptionHandler'
receiver: nil
[5] IdentityDictionary >> at:ifAbsent:
aKey: #'exceptionHandler'
aBlock: anExecBlock0
anAssoc: nil
.t1: anExecBlock0
receiver: anIdentityDictionary( )
[6] WASharedConfiguration (WAConfiguration) >> attributeAt:ifAbsent:
aSymbol: #'exceptionHandler'
aBlock: anExecBlock0
receiver: aWASharedConfiguration
[7] WASharedConfiguration (WAConfiguration) >> attributeAt:
aSymbol: #'exceptionHandler'
aSymbol: #'exceptionHandler'
receiver: aWASharedConfiguration
[8] WASharedConfiguration (WAUserConfiguration) >> at:put:
aSymbol: #'exceptionHandler'
anObject: WAWalkbackErrorHandler
receiver: aWASharedConfiguration
[9] WAWalkbackErrorHandler class >> initialize
receiver: WAWalkbackErrorHandler
[10] MCMethodDefinition >> postload
receiver: aMCMethodDefinition(WAWalkbackErrorHandler class>>initialize)


Transcript:

Fetched -> Seaside-Adaptors-FastCGI-dkh.26 --- github://glassdb/Seaside31:gemstone3.1/repository --- github://glassdb/Seaside31:gemstone3.1/repository
Loaded -> Grease-Core-JohanBrichau.86 --- http://www.smalltalkhub.com/mc/Seaside/Grease11/main --- cache
Loaded -> Grease-GemStone-Core-JohanBrichau.52 --- http://www.smalltalkhub.com/mc/Seaside/Grease11/main --- cache
Evaluated -> Grease-GemStone-Core >> initializeTransactionMutex1051
Loaded -> Seaside-Core.gemstone-JohanBrichau.815 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-GemStone300-Core-DaleHenrichs.4 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-GemStone-Core-JohanBrichau.66 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-GemStone-Basic-Development-JohanBrichau.29 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Grease-Tests-Core-JohanBrichau.95 --- http://www.smalltalkhub.com/mc/Seaside/Grease11/main --- cache
Loaded -> Grease-Tests-GemStone-Core-dkh.14 --- http://www.smalltalkhub.com/mc/Seaside/Grease11/main --- cache
Loaded -> Seaside-Component-pmm.101 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-Canvas-pmm.127 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-Email-pmm.25 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-GemStone-Email-JohanBrichau.14 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-InternetExplorer-pmm.7 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-Session.gemstone-JohanBrichau.169 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-GemStone-Session-DaleHenrichs.3 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-RenderLoop-pmm.96 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-Tools-Core.gemstone-dkh.23 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-Flow-pmm.24 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-Examples-pmm.24 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-Widgets-StephanEggermont.35 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-GemStone-Tools-Production-JohanBrichau.15 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-Tools-Web-pmm.119 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache
Loaded -> Seaside-GemStone-Tools-Web-DaleHenrichs.4 --- github://glassdb/Seaside31:gemstone3.1/repository --- cache







On Wed, May 21, 2014 at 3:06 PM, Dale Henrichs <[hidden email]> wrote:
Marching Orders! Very good ...

Johan, Gerhard, et. al., I want to follow your lead and fill in where the work is needed ...

Do you guys think that getting Seaside/Zinc/etc. ported to GemStone3.2 takes precedence over getting Zinc running on GemStone3.1?

I can take a crack at solving Gerhard's Seaside3.1 loading error, but Zinc has been on the brink for so long, maybe I should hit it hard and get the tests passing in GemStone 3.1 (encoding issues are right up my alley:)?

If there are other outstanding problems that folks are looking at they can be added into the mix...

Dale


On Tue, May 20, 2014 at 10:42 PM, Johan Brichau <[hidden email]> wrote:
Hi all,

I have been tampering off and on over the last few months to make Zinc 2.4.3 work in Gemstone.

I made a pull request [1] with my changes, though not all tests are passing and since most of the changes had to do with encoding, byte arrays vs strings, multibyte strings, etc... I really need someone to take a look at them. Also, the pace is quite slow by myself ;-)

This email is just to make sure that the pull request does not go unnoticed for someone wanting to take up work on the port.

cheers!
Johan

[1] https://github.com/glassdb/zinc/pull/48
_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass



_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass




--




--

_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass