[squeak-dev] Release image format (was: "Future Directions" welcome workspace)

David T. Lewis lewis at mail.msen.com
Sun Jun 16 19:09:17 UTC 2013


On Sun, Jun 16, 2013 at 10:45:23AM +0100, Frank Shearar wrote:
> On 16 June 2013 10:13, Frank Shearar <frank.shearar at gmail.com> wrote:
> > On 9 December 2012 00:00, David T. Lewis <lewis at mail.msen.com> wrote:
> >> On Sat, Dec 08, 2012 at 10:48:16PM +0000, Frank Shearar wrote:
> >>> On 8 December 2012 21:56, David T. Lewis <lewis at mail.msen.com> wrote:
> >>> > On Sat, Dec 08, 2012 at 09:50:21PM +0000, Frank Shearar wrote:
> >>> >> On 8 December 2012 21:24, David T. Lewis <lewis at mail.msen.com> wrote:
> >>> >> >
> >>> >> > We may have tripped an intermittent bug, and it might or might not be
> >>> >> > aggrivated by the image having been saved in the 6504 format. The actual
> >>> >> > failure was in a LargeIntegersPlugin primitive, so I'm not quite sure
> >>> >> > what to make of it.
> >>> >>
> >>> >> Indeed. #55 passed, and so has #56.
> >>> >>
> >>> >
> >>> > I see three successful runs now. It wouldn't hurt to run it a couple more
> >>> > times and see if it stays healthy. But I need to leave for an hour or two,
> >>> > so I won't do anything further right now.
> >>>
> >>> #57 - 60 have all passed.
> >>>
> >>
> >> Good. Whatever it was, it's not an issue to get in the way of the release.
> >
> > It just manifested again, for the first time in ages:
> > http://build.squeak.org/job/SqueakTrunk/383/console
> 
> And here's the crash dump.
> 

It looks like this is failing intermittently in the SqueakTrunk jobs while
running LargePositiveIntegerTest>testReciprocalModulo. I don't see any particular
pattern behind it, the crashes just seem to occur occasionally while running
the SqueakTrunk job.

I downloaded a copy of this Squeak4.5 image from build.squeak.org:
  http://build.squeak.org/job/SqueakTrunk/ws/Squeak4.4.image
  http://build.squeak.org/job/SqueakTrunk/ws/Squeak4.4.changes

I am now running the following in a workspace under both Cog and Interpreter
VMs. This runs testReciprocalModulo continuously and allocates memory to move
things around:

    log := [:s | FileStream stdout nextPutAll: s; lf].
    vm := ['Interpreter VM ', Smalltalk vm versionLabel]
        on: Warning
        do: [:e | Smalltalk vm interpreterClass].
    wasteSomeSpace := OrderedCollection new.
    1 to: 100000 do: [:i |
        (wasteSomeSpace size > 3000) ifTrue: [
            wasteSomeSpace := OrderedCollection new].
        wasteSomeSpace add: (String new: 100000).
        log value: vm.
        log value: SmalltalkImage current vmStatisticsReportString.
        log value: 'testReciprocalModulo test run ', i asString.
        (LargePositiveIntegerTest selector: #testReciprocalModulo) run].

I have run over 50,000 iterations of the loop in the last few hours, running on
both a Cog VM and on an interpreter VM. So far no crashes with either VM.

I'm going to try the same thing with the SqueakTrunk image from the same workspace:
  http://build.squeak.org/job/SqueakTrunk/lastSuccessfulBuild/artifact/target/TrunkImage.image
  http://build.squeak.org/job/SqueakTrunk/lastSuccessfulBuild/artifact/target/TrunkImage.changes

I'll run the same tests on Cog and interpreter VMs, and see if anything happens
with that image.

Dave



More information about the Squeak-dev mailing list