Test concio001 failures on PPC Mac OS X
naur at post11.tele.dk
naur at post11.tele.dk
Thu Feb 7 02:24:49 EST 2008
Hello,
The test case concio001 fails like this on the PPC Mac OS X builder tnaur-ppc-osx, most likely because of a simple timing problem:
> =====> concio001(normal)
> cd . && $MAKE -s --no-print-directory test.concio001 </dev/null >concio001.run.stdout 2>concio001.run.stderr
> Actual stdout output differs from expected:
> --- ./concio001.stdout.normalised 2008-02-06 08:18:52.000000000 +0100
> +++ ./concio001.run.stdout.normalised 2008-02-06 08:18:52.000000000 +0100
> @@ -1,2 +1 @@
> -child
> parent
> *** unexpected failure for concio001(normal)
Briefly, the test uses
> (sleep 1; echo x) | ./concio001
to run the program
> $ cat concio001.hs
> import Control.Concurrent
>
> main = do
> forkIO $ do threadDelay 100000; putStrLn "child"
> getLine
> putStrLn "parent"
> $
expecting the sleep 1 delay to be sufficient for the program to start running, performing its threadDelay and printing the "child" string, before the "parent" gets its input "x". But apparently, sleep 1 is insufficient in some cases.
If I run the test by hand, it succeeds. If I run the test alongside other processes that tries to spend disk I/O bandwith and/or CPU and/or memory, I am able to make it fail. So it appears that such circumstances are present during the buildbot running of the concio001 test.
I am not sure how to cure this. I am confident that simply increasing the sleep time would remove the problem in practice. However, perhaps some less brittle solution could be found.
And as a side issue: I also encountered this mode of failure:
> =====> concio001(normal)
> cd . && $MAKE -s --no-print-directory test.concio001 </dev/null >concio001.run.stdout 2>concio001.run.stderr
> Wrong exit code (expected 0 , actual 2 )
> Stdout:
>
> Stderr:
> ghc-6.9.20080203: internal error: stg_ap_v_ret
> (GHC version 6.9.20080203 for powerpc_apple_darwin)
> Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
> make[1]: *** [test.concio001] Abort trap
>
> *** unexpected failure for concio001(normal)
I intend to submit a bug report about this.
Best regards
Thorkil
More information about the Cvs-ghc
mailing list