Andrew Robinson
2006-Mar-28 07:55 UTC
[Rd] R 2.3.0 (alpha) on FreeBSD 6.1 fails make check-all
Hi Developers, The alpha, compiles successfully, but it is failing make check-all (on two seperate machines, both FreeBSD 6.1). Here is the version string: platform i386-unknown-freebsd6.1 arch i386 os freebsd6.1 system i386, freebsd6.1 status alpha major 2 minor 3.0 year 2006 month 03 day 27 svn rev 37584 language R version.string Version 2.3.0 alpha (2006-03-27 r37584) Here is the error message from make check-all comparing 'd-p-q-r-tests.Rout' to './d-p-q-r-tests.Rout.save' ...706c706 < [1] "Mean scaled difference: 0.08333333" ---> [1] TRUEgmake[3]: *** [d-p-q-r-tests.Rout] Error 1 gmake[3]: Leaving directory `/usr/local/beta/R-alpha/tests' gmake[2]: *** [test-Specific] Error 2 gmake[2]: Leaving directory `/usr/local/beta/R-alpha/tests' gmake[1]: *** [test-all-basics] Error 1 gmake[1]: Leaving directory `/usr/local/beta/R-alpha/tests' gmake: *** [check-all] Error 2 I have checked d-p-q-r-tests.Rout.fail for any obvious problems - I found some warnings, viz.> pgamma(1,Inf,scale=Inf) == 0[1] TRUE> ## Also pgamma(Inf,Inf) == 1 for which NaN was slightly moreappropriate> all(is.nan(c(pgamma(Inf, 1,scale=Inf),+ pgamma(Inf,Inf,scale=Inf)))) [1] TRUE Warning messages: 1: NaNs produced in: pgamma(q, shape, scale, lower.tail, log.p) 2: NaNs produced in: pgamma(q, shape, scale, lower.tail, log.p)> x0 <- -2 * 10^-c(22,10,7,5) > stopifnot(pbinom(x0, size = 3, prob = 0.1) == 0,+ dbinom(x0, 3, 0.1) == 0) # d*() warns about non-integer Warning messages: 1: non-integer x = -0.000000 2: non-integer x = -0.000020> ## very small negatives were rounded to 0 in R 2.2.1 and earlier >I hope that this is helpful. Thanks are due to Peter Dalgaard for guidance. So, thanks Peter :). Cheers Andrew -- Andrew Robinson Department of Mathematics and Statistics Tel: +61-3-8344-9763 University of Melbourne, VIC 3010 Australia Fax: +61-3-8344-4599 Email: a.robinson at ms.unimelb.edu.au http://www.ms.unimelb.edu.au
Prof Brian Ripley
2006-Mar-28 08:03 UTC
[Rd] R 2.3.0 (alpha) on FreeBSD 6.1 fails make check-all
Thanks for checking. Please look in d-p-q-r-tests.Rout.fail and see what immediately preceeds the line [1] "Mean scaled difference: 0.08333333" Some experimentation suggests it is> All.eq(Rhyper, qhyper (Phyper, m = 40, n = 30, k = 20))If so, we have Rhyper <- scan() 16 11 11 15 11 13 13 12 13 10 10 7 11 14 13 9 14 13 13 11 Phyper <- phyper (Rhyper, m = 40, n = 30, k = 20) and those have been checked. So the error would appear to be in qhyper(Phyper, m = 40, n = 30, k = 20) and indeed a mean scaled difference of 1/12 is plausible, since the mean of Rhyper is 12. So I deduce that your platform has a problem in qhyper, but please cross-check. If so, this is strange as the only recent change to qhyper.c (or things I can see it uses such as lfastchoose) is cosmetic. Can you confirm the diagnosis is correct so far? On Tue, 28 Mar 2006, Andrew Robinson wrote:> Hi Developers, > > The alpha, compiles successfully, but it is failing make check-all (on > two seperate machines, both FreeBSD 6.1). > > Here is the version string: > > platform i386-unknown-freebsd6.1 > arch i386 > os freebsd6.1 > system i386, freebsd6.1 > status alpha > major 2 > minor 3.0 > year 2006 > month 03 > day 27 > svn rev 37584 > language R > version.string Version 2.3.0 alpha (2006-03-27 r37584) > > > > Here is the error message from make check-all > > comparing 'd-p-q-r-tests.Rout' to './d-p-q-r-tests.Rout.save' > ...706c706 > < [1] "Mean scaled difference: 0.08333333" > --- >> [1] TRUE > gmake[3]: *** [d-p-q-r-tests.Rout] Error 1 > gmake[3]: Leaving directory `/usr/local/beta/R-alpha/tests' > gmake[2]: *** [test-Specific] Error 2 > gmake[2]: Leaving directory `/usr/local/beta/R-alpha/tests' > gmake[1]: *** [test-all-basics] Error 1 > gmake[1]: Leaving directory `/usr/local/beta/R-alpha/tests' > gmake: *** [check-all] Error 2 > > > > > I have checked d-p-q-r-tests.Rout.fail for any obvious problems - I > found some warnings, viz. > > > >> pgamma(1,Inf,scale=Inf) == 0 > [1] TRUE >> ## Also pgamma(Inf,Inf) == 1 for which NaN was slightly more > appropriate >> all(is.nan(c(pgamma(Inf, 1,scale=Inf), > + pgamma(Inf,Inf,scale=Inf)))) > [1] TRUE > Warning messages: > 1: NaNs produced in: pgamma(q, shape, scale, lower.tail, log.p) > 2: NaNs produced in: pgamma(q, shape, scale, lower.tail, log.p) > > > > >> x0 <- -2 * 10^-c(22,10,7,5) >> stopifnot(pbinom(x0, size = 3, prob = 0.1) == 0, > + dbinom(x0, 3, 0.1) == 0) # d*() warns about non-integer > Warning messages: > 1: non-integer x = -0.000000 > 2: non-integer x = -0.000020 >> ## very small negatives were rounded to 0 in R 2.2.1 and earlier >> > > > I hope that this is helpful. Thanks are due to Peter Dalgaard for > guidance. So, thanks Peter :). > > Cheers > > Andrew >-- Brian D. Ripley, ripley at stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595
Martin Maechler
2006-Mar-28 08:40 UTC
[Rd] R 2.3.0 (alpha) on FreeBSD 6.1 fails make check-all
>>>>> "Andrew" == Andrew Robinson <A.Robinson at ms.unimelb.edu.au> >>>>> on Tue, 28 Mar 2006 17:55:37 +1000 writes:Andrew> Hi Developers, Andrew> The alpha, compiles successfully, but it is failing make check-all (on Andrew> two seperate machines, both FreeBSD 6.1). Andrew> Here is the version string: Andrew> platform i386-unknown-freebsd6.1 Andrew> arch i386 Andrew> os freebsd6.1 Andrew> system i386, freebsd6.1 Andrew> status alpha Andrew> major 2 Andrew> minor 3.0 Andrew> year 2006 Andrew> month 03 Andrew> day 27 Andrew> svn rev 37584 Andrew> language R Andrew> version.string Version 2.3.0 alpha (2006-03-27 r37584) Andrew> Here is the error message from make check-all Andrew> comparing 'd-p-q-r-tests.Rout' to './d-p-q-r-tests.Rout.save' Andrew> ...706c706 Andrew> < [1] "Mean scaled difference: 0.08333333" Andrew> --- >> [1] TRUE So what we need to know is the ``neighborhood'' of the line ----------------------------------------------- [1] "Mean scaled difference: 0.08333333" ----------------------------------------------- in your <builddir>/tests/d-p-q-r-tests.Rout This will show which of the equality tests did not give TRUE. Andrew> gmake[3]: *** [d-p-q-r-tests.Rout] Error 1 Andrew> gmake[3]: Leaving directory `/usr/local/beta/R-alpha/tests' Andrew> gmake[2]: *** [test-Specific] Error 2 Andrew> gmake[2]: Leaving directory `/usr/local/beta/R-alpha/tests' Andrew> gmake[1]: *** [test-all-basics] Error 1 Andrew> gmake[1]: Leaving directory `/usr/local/beta/R-alpha/tests' Andrew> gmake: *** [check-all] Error 2 ......................