Migration headache

Göran Krampe goran at krampe.se
Thu Feb 26 11:24:01 UTC 2009


Hi!

Ok, so Gjallar is improving day-by-day and the current Gjallar is built 
on Squeak 3.10.2-7179 and MC packages "r42Alpha4" + "Magma sunit" from 
MagmaTester on SS. I have been working on this latest incarnation of 
Magma the latest few days and it seems to be working fine (although 
marked as alpha).

I now need to migrate an existing Gjallar customer over to the above new 
system/version.

The older Gjallar runs MagmaServerLoader-kph.35 in a 3.8.1-6747 image. 
This is of course a rather old Magma but it has been running for over a 
year, continuous use (although on the lighter side) with no serious 
problems at all. Good work Chris! :)

Questions:

1. Would I be better off to use r41.2 than r42Alpha? Presuming that is 
the latest official release, which I think it is?

2. Are there migration instructions?

I did the simplest thing first, just opened up the old db using the new 
image. Of course it says that hey, this repo is version 9 so I need to 
migrate it. Cool, go ahead. :)

Then after that phase I stumbled on 2 issues I "solved":

- Missing ivar in MaRootAnchor. Fine, seems to be "stats" so I just told 
Magma to go forward with that.

- Then Magma blew up because it was sending "node" in 
#sendToWarmBackups: and getting nil. After a bit of investigation I 
realized this is related to the latest HA-code so this little trick 
seemed to repair that:

MagmaRepositoryController allInstances anyOne session commit: [node := 
MagmaNode new]


Then it got harder. :) It looks very promising at this stage, most of 
Gjallar seems to work fine. I can explore the db and it all looks fine 
except for one important thing: SortedCollections with stored sortBlocks

In the old image it all works fine, in the new image I end up with a 
garbled SortedCollection with these ivars:
	array: 	4081353
	firstIndex: 	281473902968834
	lastIndex: 	281473902968835
	sortBlock: 	4081234

...so obviously there is a problem here with SortedCollection instances 
*that have sortBlocks* - because in other places I have 
SortedCollections with a nil sortBlock, and those work fine.

Hmmm, I will try to work around this but of course it might be 
interesting for you to be aware of the issue.

regards, Göran



More information about the Magma mailing list