Hi Dale,

Yes I seem to recall that Pier was using the class as an index into a collection or the hash of the class was used in an equality comparison and in GemStone class identity is just not preserved over time, so different class versions have different hash values ... Maybe we should tackle these issues sometime, or have you found your exporter to be a better solution?

I think having both would be ideal - an exporter and the ability to safely upgrade in-place.

I had a problem upgrading my Pier instance on Gemstone when classes that are held in an instance variable change shape. The situation should be slightly better with Migritte with pragmas as PRComponent now holds a prototype instance rather than a componentClass. However there are other places that hold a class then check for equality e.g. PUSecurity, PUPermission

Nick