this is not a test suite but instructions on how to replicate
two Store bugs in version 7 and I believe 7.1. The first results in a
walk back, the second does not. I believe they have the same root cause,
but in the second case Store is suppressing the walkback, making things
worse.
Joerg
Bug 1
* Create a new package called BugTest
* Add a class called TestClass as a subclass of Object using the default
template with instVar1 and insVar2
* Add accessors for "instVar1"
* Publish and unload
* Load package
* Add accessors for "instVar2"
* Get list of versions and merge published version into image (I know a
useless step).
* Accept all resolutions.
* Publish packages
At this point store will disconnect and the package in the image is
"parent less". The failure depends on merging a published version into a
package with unpublished new methods.
Bug 2
There is second more pernicious variant of this bug that I was trying to
replicate when I ran into the version above.. In this case the last
publish step would appear to succeed. The accessor methods for instVar2
remain in the image and reloading the package changes nothing. HOWEVER
the instVar2 accessor methods are not in the published package in store.
Loading the package into a different image will appear to be normal but
those methods will be absent. Browsing published versions will confirm
the methods were never published.
We have had this happen to us at least twice. One difference between our
Store db and the test above is that we have multiple nested bundles. So
I tried the following:
* Created a bundle BugTestBundle
* Add an early version of the package BugTest
* Published, unloaded and reloaded
* Added a new method to TestClass
* Merged the prior version of BugTestBundle into the image accepting all
resolutions
* Published and unloaded
* Loaded the latest version of BugTestBundler
* The method add to TestClass was not present, nor is it present when
browsing the correct version of the package
The workaround to both of these is to always publish before merging.
Joerg
--
Joerg Beekmann