<br><br><div class="gmail_quote">On Thu, Jan 28, 2010 at 12:25 PM, keith <span dir="ltr">&lt;<a href="mailto:keith_hodges@yahoo.co.uk">keith_hodges@yahoo.co.uk</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div><div></div><div class="h5"><br>
On 28 Jan 2010, at 07:16, Andreas Raab wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
keith wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
It sounds like you loaded the right thing. You just need to turn the &quot;useAtomicLoading&quot; preference off, this uses MCPackageLoader1b, the non atomic loading code.<br>
</blockquote>
<br>
So I tried this too and it doesn&#39;t get very far either (same process described earlier). It fails very early on when it&#39;s trying to load a variant of ProgressInitiationException&gt;&gt;defaultMorphicAction. The failure originates from MCMethodDefinition&gt;&gt;preloadOver: which actually *removes* the selector that is being changed.<br>

<br>
This is a fatal flaw since removing a method that&#39;s about to be modified can&#39;t possibly work when it comes to any system critical methods (compiler etc. comes to mind but even the progress display is enought to blow up). This version won&#39;t be able to deal with many, many changes that went into the trunk.<br>

<br>
Cheers,<br>
 - Andreas<br>
</blockquote>
<br></div></div>
Sigh,<br>
<br>
Like I said, different bugs in different places.<br>
<br>
The 1b loader tries to pre-empt problems, whereas the original loader just waits for the problems to occur, and catches the exceptions. It turns out that the 1b approach is a lot harder.<br>
<br>
If I recall, and my memory is failing, methods are removed, in order to accomodate lukas&#39; difficult load scenario, where the change in the instance vars breaks things.<br></blockquote><div><br></div><div>What is this scenario?  Does it break the following load ordering?</div>
<div><br></div><div>- add all new inst and class vars to existing classes (avoiding deleting any that need to be deleted until later)</div><div><div>- add all new classes</div><div>- add all new methods</div><div>- change all to be changed methods</div>
<div>- delete all to be deleted methods</div><div>- remove all inst and class vars from existing classes (deferred from step 1)</div><div><br></div><div><br></div><div><br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

<br>
We did think of returning to the old loader approach at one point, but figured it would be better to get AtomicLoading to work. So now we are caught in the middle.<br><font color="#888888">
<br>
Keith<br>
<br>
</font></blockquote></div><br>