[Glass] a InternalError occurred (error 2261), The object with object ID 20 is corrupt. Reason: 'process switch not in critial state'

John McIntosh johnmci at smalltalkconsulting.com
Wed Aug 21 16:28:45 PDT 2013


8.7.3?
Yes because I did this setup via
http://gemstonesoup.wordpress.com/2012/09/21/gemstones-3-1-0-1-is-shipping

UserGlobals

at: #BootstrapApplicationLoadSpecs

  put: {

      { 'ConfigurationOfGLASS'. '1.0-beta.8.7.3'. #('default').
BootstrapRepositoryDirectory. } .

      { 'ConfigurationOfSeaside30'.

        '3.0.7.1'.

        #('default').

        '/opt/gemstone/product/seaside/monticello/repository'.

      } .

    }.


After carefully confirming yes my production system is using the above
configuration versions.

If I had loaded 1.0-beta-9 into my production system then I would have
coded up different values based on what MC said I had loaded into
production.

Still I see you are doing the UserGlobal>at:ifAbsent: check on
BootstrapApplicationLoadSpecs in the updateSeasideImage, so I don't need to
in future mess
with a custom one, unless I've a need for other MC packages to be loaded?


As for> "We expect you to have created a disk-based repository"
I'm not sure if anyone directly answered if GsPackageLibrary
getMonticelloRepositoryDirectory could be the seaside cache repository?





On Wed, Aug 21, 2013 at 12:05 PM, Dale K. Henrichs <
dale.henrichs at gemtalksystems.com> wrote:

>
>
> ------------------------------
>
> *From: *"John McIntosh" <johnmci at smalltalkconsulting.com>
> *To: *"Dale K. Henrichs" <dale.henrichs at gemtalksystems.com>
> *Cc: *glass at lists.gemtalksystems.com, "James Foster" <
> James.Foster at gemtalksystems.com>
> *Sent: *Tuesday, August 20, 2013 5:29:26 PM
>
> *Subject: *Re: [Glass] a InternalError occurred (error 2261), The object
> with object ID 20 is corrupt. Reason: 'process switch not in critial state'
>
> Ah
> johnmci at mail:~$ locate upgradeSeasideImage
>
> /opt/gemstone/GemStone64Bit3.1.0.4-x86_64.Linux/seaside/bin/upgradeSeasideImage
>
> /opt/gemstone/GemStone64Bit3.1.0.4-x86_64.Linux/upgrade/upgradeSeasideImage.topaz
> johnmci at mail:~$
>
> It was just a guess:)
>
> Anyway, I'm curious why the upgrade script is loading GLASS
> 1.0-beta.8.7.3?
>
> The default version of GLASS in the BootstrapApplicationLoadSpecs is
> 1.0-beta.9:
>
>   UserGlobals
>          at: #BootstrapApplicationLoadSpecs
>           ifAbsent: [.
>             UserGlobals.
>               at: #BootstrapApplicationLoadSpecs.
>               put: {
>                   {'ConfigurationOfGLASS'. '1.0-beta.9'. #('default').
> BootstrapRepositoryDirectory. }.
>               }.
>
> and your script is loading 1.0-beta.8.7.3. Did you set
> BootstrapApplicationLoadSpecs? If so, what does it look like?
>
>
>
> no 3.1.0 on that machine, I scp a copy of the extent0 (made after gemstone
> backup and shutdown) between the production machine and a test machine, no
> tranlogs around...
>
> The 3.1.0 machine does not have the current GLASS version loaded, is that
> a pre-req by chance? Need one upgrade their 3.1.0 server to GLASS 1.0-beta.9.
> before doing the migration?
>
> It is not required that you upgrade to GLASS 1.0-beta.9 before the
> upgrade, however, it is prudent to ensure that your application will
> function correctly on GLASS 1.0-beta.9. In fact it is prudent to load and
> test your application in any new version of GemStone just to ensure that
> none of the bugfixes negatively impact your application...
>
>
> In all of this can I suggest a upgradeSeasideImage that does all the
> required work (like the upgradeImage, fetching any cached data,
> determining if proper seaside code is loaded, etc).
>
> At the moment the upgradeSeasideImage is designed to allow you to tell the
> system which versions of projects to load and which cache repository to use
> based on decisions that you've made after doing testing and validation of
> your application on the target version of GemStone.
>
> I think that there are way too many variables in the upgrade process to
> expect that an automated script can make all the right decisions without
> feedback from the developer:)
>
>
> Also it seems at any point of failure in the update leaves you with a
> unworkable database btw. I'd be concerned about a network server/failure
> issue against various remote repositories we are pulling MC code from.
>
> We expect you to have created a disk-based repository
> (BootstrapRepositoryDirectory or the repository slot in the
> BootstrapApplicationLoadSpecs) with all of your required packages for the
> express purpose of avoiding network during an upgrade ...
>
>
>
>
> On Tue, Aug 20, 2013 at 12:05 PM, Dale K. Henrichs <
> dale.henrichs at gemtalksystems.com> wrote:
>
>> John,
>>
>> It looks like the upgradeSeasideImage script is trying to load  GLASS
>> 1.0-beta.8.7.3. The default GLASS version in the 3.1.0.4
>> upgradeSeasideImage script is 1.0-beta.9.
>>
>> I'm going to guess that you are using the upgradeSeasideImage script from
>> 3.1.0? You should use the 3.1.0.4 upgradeSeasideImage script.
>>
>> Dale
>> ------------------------------
>>
>> *From: *"John McIntosh" <johnmci at smalltalkconsulting.com>
>> *To: *"Dale K. Henrichs" <dale.henrichs at gemtalksystems.com>
>> *Cc: *glass at lists.gemtalksystems.com, "James Foster" <
>> James.Foster at gemtalksystems.com>
>> *Sent: *Monday, August 19, 2013 9:55:31 PM
>>
>> *Subject: *Re: [Glass] a InternalError occurred (error 2261), The object
>> with object ID 20 is corrupt. Reason: 'process switch not in critial state'
>>
>> Bit more poking but when I run the upgradeSeasideImage -s seaside
>> Tue Aug 20 00:50:32 EDT 2013
>> Starting upgrade...
>> ERROR: topaz exited with status 1.
>> Please check the file topazerrors.log and all files in
>>
>> At the end it has...
>>
>> Successful commit
>> topaz 1>
>> topaz 1> ! Now load the entire configuration to pick up user apppiation
>> code and to ensure
>> topaz 1> !   that the in-memory package state is correct
>> topaz 1> run
>> BootstrapApplicationLoadSpecs do: [:loadSpec | | version repo repoPath
>> configurationClassName versionString loadList |
>>     configurationClassName := loadSpec at: 1.
>>     versionString := loadSpec at: 2.
>>     loadList := loadSpec at: 3.
>>     repoPath := loadSpec at: 4.
>>     repo := MCDirectoryRepository new.
>>     repo directory: (ServerFileDirectory on: repoPath).
>>     version := (BootstrapSymbolDictionary at: configurationClassName
>> asSymbol) project version: versionString.
>>     version repositoryOverrides: (OrderedCollection with: repo).
>>     GsDeployer bulkMigrate: [
>>         [ version load: loadList ]
>>           on: MCPerformPostloadNotification
>>           do: [:ex |
>>             (BootstrapApplicationPostloadClassList includes: ex
>> postloadClass theNonMetaClass name)
>>               ifTrue: [ ex resume: true ]
>>               ifFalse: [
>>                 GsFile gciLogServer: '  Skip ', ex postloadClass name
>> asString, ' initialization.'.
>>                 ex resume: false ]]].
>> ].
>> true
>> %
>> --transcript--'Loading 1.0-beta.8.7.3 of ConfigurationOfGLASS...'
>> --transcript--'Fetched -> ConfigurationOfMetacello-dkh.752 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Loaded -> ConfigurationOfMetacello-dkh.752 ---
>> /opt/gemstone/product/seaside/monticello/repository --- cache'
>> --transcript--'Fetched -> ConfigurationOfGsCore-dkh.287 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Loaded -> ConfigurationOfGsCore-dkh.287 ---
>> /opt/gemstone/product/seaside/monticello/repository --- cache'
>> --transcript--'Fetched -> ConfigurationOfGsMisc-dkh.110 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Loaded -> ConfigurationOfGsMisc-dkh.110 ---
>> /opt/gemstone/product/seaside/monticello/repository --- cache'
>> --transcript--'Fetched -> ConfigurationOfGsSqueakCommon-dkh.23 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Loaded -> ConfigurationOfGsSqueakCommon-dkh.23 ---
>> /opt/gemstone/product/seaside/monticello/repository --- cache'
>> --transcript--'Fetched -> ConfigurationOfGsOB-dkh.89 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Loaded -> ConfigurationOfGsOB-dkh.89 ---
>> /opt/gemstone/product/seaside/monticello/repository --- cache'
>> --transcript--'Fetched -> ConfigurationOfGrease-topa.192 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Loaded -> ConfigurationOfGrease-topa.192 ---
>> /opt/gemstone/product/seaside/monticello/repository --- cache'
>> --transcript--'Fetched ->
>> ConfigurationOfGoferProjectLoader-DaleHenrichs.21 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/reposi
>> tory'
>> --transcript--'Loaded ->
>> ConfigurationOfGoferProjectLoader-DaleHenrichs.21 ---
>> /opt/gemstone/product/seaside/monticello/repository --- cache'
>> --transcript--'Fetched -> ConfigurationOfGsMonticello-dkh.172 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Loaded -> ConfigurationOfGsMonticello-dkh.172 ---
>> /opt/gemstone/product/seaside/monticello/repository --- cache'
>> --transcript--'Project: Core 0.246.1'
>> --transcript--'Fetched -> Core.v3-dkh.66 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Fetched -> Base-Bootstrap.v3-dkh.29 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Fetched -> Bootstrap.v3-dkh.223 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Fetched -> GemStone-ANSI-Streams-DaleHenrichs.5 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Fetched -> GemStone-Indexing-Extensions-dkh.3 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Fetched -> Sport3.010.v3-dkh.29 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Fetched -> Squeak.v3-dkh.285 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Fetched -> Regex-Core-DaleHenrichs.3 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Fetched -> Regex-Tests-Core-DaleHenrichs.5 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Project: Monticello 0.243'
>> --transcript--'Project: Core 0.246'
>> --transcript--'Fetched -> PackageInfo-Base.g-dkh.36 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Fetched -> Monticello.v3-dkh.448 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Fetched -> GemStone-Deployment-dkh.22 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Fetched -> Change-Notification.v3-dkh.18 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Project: Metacello 1.0-beta.31.1.5'
>> --transcript--'Fetched -> ConfigurationOfGofer-dkh.36 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Loaded -> ConfigurationOfGofer-dkh.36 ---
>> /opt/gemstone/product/seaside/monticello/repository --- cache'
>> --transcript--'Project: Gofer Core 1.0.5.1'
>> --transcript--'Fetched -> Gofer-Core.gemstone-dkh.135 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'Project: Monticello 0.242'
>> --transcript--'Fetched -> Metacello-Base-DaleHenrichs.19 ---
>> /opt/gemstone/product/seaside/monticello/repository ---
>> /opt/gemstone/product/seaside/monticello/repository'
>> --transcript--'...RETRY->Metacello-Core-dkh.492'
>> --transcript--'...RETRY->Metacello-Core-dkh.492'
>> --transcript--'...FAILED->Metacello-Core-dkh.492'
>> -----------------------------------------------------
>> GemStone: Error         Nonfatal
>> a MetacelloPackageSpecResolutionError occurred (error 2710)
>> Error Category: 231169 [GemStone] Number: 2710  Arg Count: 4 Context :
>> 514565889 exception : 1052486657
>> Arg 1: [1052495361 sz:12 cls: 516192257 MetacelloPackageSpec]
>> aMetacelloPackageSpec
>> Arg 2: [1052492545 sz:2 cls: 66817 Array] anArray
>> Arg 3: [20 sz:0 cls: 76289 UndefinedObject] nil
>> Arg 4: [20 sz:0 cls: 76289 UndefinedObject] nil
>> ERROR: UNEXPECTED ERROR
>> topaz > exec iferr 1 : stk
>>
>>
>> On Tue, Aug 20, 2013 at 12:29 AM, John McIntosh <
>> johnmci at smalltalkconsulting.com> wrote:
>>
>>> Ok well obviously I didn't flip the blank page at 34 over and read page
>>> 35, although it kinda suggests this a 2.4/3.0.x to 3.1 migration plan.
>>> Frankly I'd suggest checking in the upgradeSeasideImage to do the check
>>> and prompt to continue.
>>> I guess a question here is that page 37 is a 'template' but what I
>>> really need to do is covered in
>>>
>>> https://gist.github.com/dalehenrich/3762982
>>>
>>> But that is unclear given a lack of instructions, which seem to be found
>>> here
>>>
>>> http://gemstonesoup.wordpress.com/2012/09/21/gemstones-3-1-0-1-is-shipping/
>>>
>>> However I'm unclear how to run the  seaside cache repository logic? Via
>>> the old gemtools before starting? Or topaz?
>>>
>>> I do have a /opt/gemstone/product/seaside/monticello/repository but that
>>> does not contain ConfigurationOfSeaside30
>>> and wouldn't GsPackageLibrary getMonticelloRepositoryDirectory be the
>>> seaside cache repository?
>>>
>>> Anyway past midnight so tomorrow...
>>>
>>>
>>
>>
>> --
>>
>> ===========================================================================
>> John M. McIntosh <johnmci at smalltalkconsulting.com>
>> Corporate Smalltalk Consulting Ltd. Twitter: squeaker68882
>>
>> ===========================================================================
>>
>>
>>
>
>
> --
> ===========================================================================
> John M. McIntosh <johnmci at smalltalkconsulting.com>
> Corporate Smalltalk Consulting Ltd. Twitter: squeaker68882
> ===========================================================================
>
>
>


-- 
===========================================================================
John M. McIntosh <johnmci at smalltalkconsulting.com>
Corporate Smalltalk Consulting Ltd. Twitter: squeaker68882
===========================================================================
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gemtalksystems.com/mailman/private/glass/attachments/20130821/1ec66850/attachment-0001.html>


More information about the Glass mailing list