[Glass] recompiling sortBlocks - after upgrade to 3.3.0 from 3.2.4
Dale Henrichs via Glass
glass at lists.gemtalksystems.com
Fri Feb 19 09:51:26 PST 2016
Paul,
Very good question.
We document a $GEMSTONE/bin/postconv script for use in recompiling the
sort blocks in the 2.4 to 3.3 section of the installation guide[1] and
after a quick read of the script, there doesn't appear to be any
2.4-specific operations in the script so it should work for a 3.2 to 3.3
upgrade as well.
The postconv script arranges to run multiple gems in parallel to do the
conversion with cache warmers and the whole nine yards, but basic
operations can be distilled to the following for each SortedCollection
instance:
| sc sortBlock val cls str val |
sc := "sortedcollection instance".
sortBlock := sc sortBlock.
str := sortBlock _sourceString.
val := str evaluate.
sc _sortBlock: val
Now this only works for simple blocks ... if the blocks are more
complicated then you will have to provide the proper evaluation context
for the `evaluate` call ... I can help with that if necessary.
The script hasn't been incorporated into GsDevKit_home, but I think it
would be a good idea[2].
Dale
[1]
https://downloads.gemtalksystems.com/docs/GemStone64/3.3.x/GS64-InstallGuide-Linux-3.3/3-Conversion.htm#pgfId-1053114
[2] https://github.com/GsDevKit/GsDevKit_home/issues/70
On 02/19/2016 08:13 AM, PAUL DEBRUICKER via Glass wrote:
> Hi=
>
> I'm having trouble getting rid of the error:
>
>
> Cannot execute method, 'GsNMethod with oop 2909441 needs recompile'
>
>
>
>
> The method it is referring to is SortedCollection class>>#new
>
> But recompiling the SortedCollection class & committing doesn't fix things so its probably the sortBlock for that instance that needs recompiled and I'm unsure how to do that safely.
>
> I'm also seeing the error in another method that also defines a sortBlock so I'm guessing there is a step I missed in the upgrade but I can't find it in the docs.
>
>
> How should I go about recompiling the sortBlocks? Or is there something else I should do to fix this?
>
>
> Thanks in advance
>
>
> Paul
>
> _______________________________________________
> Glass mailing list
> Glass at lists.gemtalksystems.com
> http://lists.gemtalksystems.com/mailman/listinfo/glass
More information about the Glass
mailing list