Hi Ben,

Sorry, I do not have yet a verdict. The part of the system that reproduces
the crash is not used frequently so it takes me quite some time to
reproduce it :(
Will keep you informed if I see it again or not with the last changes.

Thanks for checking with me.



On Mon, Aug 8, 2016 at 12:43 PM, Ben Coman <b...@openinworld.com> wrote:

> Hi Mariano,  How are you going with this problem?
>
> On Fri, Jul 22, 2016 at 11:05 PM, Mariano Martinez Peck
> <marianop...@gmail.com> wrote:
> >
> >
> > On Fri, Jul 22, 2016 at 2:26 AM, Ben Coman <b...@openinworld.com> wrote:
> >>
> >>
> >>
> >> On Fri, Jul 22, 2016 at 4:42 AM, Mariano Martinez Peck
> >> <marianop...@gmail.com> wrote:
> >>>
> >>>
> >>>
> >>> On Sun, Jul 17, 2016 at 6:46 AM, Ben Coman <b...@openinworld.com>
> wrote:
> >>>
> >>>>
> >>>> Do you have some test code or a test image I could run to reproduce
> >>>> the problem?
> >>>
> >>>
> >>>
> >>> The problem is that I cannot reproduce it immediately. It takes me some
> >>> days and likely some image save and start again until I reproduce it.
> >>
> >>
> >> Could you try
> >> How about something that invokes
> >>
> >
> >
> > Hi Ben. I tried to reproduce it in a couple of ways, trying to simulate
> what
> > I do for real but I failed:
> >
> > | commandString |
> > commandString := 'wkhtmltopdf  --javascript-delay 300  --encoding utf8
> > --page-size A4 --image-quality 100  --footer-spacing 10
> --header-spacing 10
> > --margin-top 10  --header-html "http://google.com"; --footer-html
> > "http://google.com"; "http://pharo.org/"; "/tmp/TestPharoExport.pdf"'.
> >
> > 10 timesRepeat: [
> >
> > 3 timesRepeat: [
> > OSSUnixSubprocess new
> > shellCommand: commandString;
> > redirectStdout;
> > redirectStderr;
> > runAndWaitOnExitDo: [ :command :outString :errString |
> > Transcript show: errString.
> > Transcript show: outString.
> > ].
> >  ].
> > Smalltalk saveSession.
> >
> > ]
> >
> > But...I could not yet reproduce it in the real case either....so I will
> keep
> > you informed.
> >
> >
> >>>
> >>>
> >>>>
> >>>>
> >>>> Now I have one thing for you to try.  In the move of DelaySchedulerXxx
> >>>> from milliseconds to microseconds, the code for dealing with clock
> >>>> wrap-around was removed, but I wonder if it was also covering clock
> >>>> jitter as a side effect.  Could you try again the SpinScheduler but
> >>>> restore this code...
> >>>>
> >>>> From handletTimerEvent...
> >>>>   "Check for clock wrap-around."
> >>>>   millisecondNowTick < activeDelayStartTime ifTrue: [
> >>>>     "clock wrapped"
> >>>>     self saveResumptionTimes.
> >>>>     self restoreResumptionTimes ].
> >>>>   activeDelayStartTime := millisecondNowTick.
> >>>>
> >>>> From runTimerEventLoop...
> >>>>   Time millisecondClockValue < millisecondNowTick
> >>>>     ifTrue:[ timingSemaphore signal ]. "retry"
> >>>>
> >>>> From startup...
> >>>>    activeDelayStartTime := Time millisecondClockValue.
> >>>>
> >>>
> >>> OK, I put back the code into the spin scheduler. Then I kept using
> >>> milisecond one until I finished the changes. Then I saved image and
> switch
> >>> to spin one: the image hungs. I cannot even interrupt it. I attach my
> >>> modifications.
> >>> Do they look correct?
> >>
> >>
> >> I confirm that locked my image also.
> >>
> >> One change of milli to micro was missed at the bottom of
> >> runTimeEventLoop...
> >> That is...
> >>    Time millisecondClockValue < microsecondNowTick
> >> to...
> >>    Time microsecondClockValue < microsecondNowTick
> >>
> > Thanks. That did the trick!
>
>


-- 
Mariano
http://marianopeck.wordpress.com

Reply via email to