[R-sig-Debian] make check reg-tests-1b.R fails with Ubuntu R

Andrew Piskorski atp at piskorski.com
Wed Sep 14 16:18:55 CEST 2011


Today I built R from source on a 32-bit Ubuntu 10.04.3 LTS box, and
saw that the "make check" tests/reg-tests-1b.R failed.  From the
output at the end of my "tests/reg-tests-1b.Rout.fail" file, the
problem is appearing in the "identical(z, x %*% t(y))" test code
below.

I then tried the stock R provided by the Ubuntu r-base-core binary
package, and to my surprise, it failed the test in exactly the same
way!

So this is NOT solely a problem with my from-source build (I merely
happened to notice it first that way).  It probably indicates some
sort of system-wide bug or misconfiguration, at least on my machine,
perhaps on others' too.

Could someone please advise me:  What is the significance of this test
from reg-tests-1b.R failing, and what should I do to further track it
down and fix it?

Thanks!  Much more detail is below.

------------------------------------------------------------

# Here's the excerpt from the "make check" output where I first
# noticed the problem:

running regression tests ...
make[3]: Entering directory `/net/brain/home/local-x86_32-ubuntu/nobackup/co-R/R-2-12-branch/Build-x86_32/tests'
running code in '../../tests/reg-tests-1.R' ... OK
running code in '../../tests/reg-tests-1b.R' ...make[3]: *** [reg-tests-1b.Rout] Error 1
make[3]: Leaving directory `/net/brain/home/local-x86_32-ubuntu/nobackup/co-R/R-2-12-branch/Build-x86_32/tests'
make[2]: *** [test-Reg] Error 2
make[2]: Leaving directory `/net/brain/home/local-x86_32-ubuntu/nobackup/co-R/R-2-12-branch/Build-x86_32/tests'
make[1]: *** [test-all-basics] Error 1
make[1]: Leaving directory `/net/brain/home/local-x86_32-ubuntu/nobackup/co-R/R-2-12-branch/Build-x86_32/tests'
make: *** [check] Error 2


# This is the Ubuntu machine where I found the error:

andy at n88:~$ lsb_release -d
Description:	Ubuntu 10.04.3 LTS
andy at n88:~$ uname -a
Linux n88 2.6.32-33-generic #72-Ubuntu SMP Fri Jul 29 21:08:37 UTC 2011 i686 GNU/Linux
andy at n88:~$ dpkg -l r-base-core | grep r-base
ii  r-base-core   2.10.1-2   GNU R core of statistical computation and graphics system


# Stock Ubuntu-provided R has the same failure:

andy at n88:~$ /usr/bin/R -q --vanilla
> dtk.R.version()
[1] "R 2.10.1, 2009-12-14, svn.rev 50720, i486-pc-linux-gnu"
> x <- matrix(c(1, 0, NA, 1), 2, 2) ; y <- matrix(c(1, 0, 0, 2, 1, 0), 3, 2)
> (z <- tcrossprod(x, y))
     [,1] [,2] [,3]
[1,]   NA   NA    0
[2,]    2    1    0
> identical(z, x %*% t(y))
[1] FALSE


# R I just built from scratch, same failure as stock R:

andy at n88:~$ /usr/local/pkg/R-2.12-branch-20110914/bin/R -q --vanilla
> dtk.R.version()
[1] "R 2.12.2 (Patched), 2011-03-18, svn.rev 57004, i686-pc-linux-gnu"
> x <- matrix(c(1, 0, NA, 1), 2, 2) ; y <- matrix(c(1, 0, 0, 2, 1, 0), 3, 2)
> (z <- tcrossprod(x, y))
     [,1] [,2] [,3]
[1,]   NA   NA    0
[2,]    2    1    0
> identical(z, x %*% t(y))
[1] FALSE


# Apparently the correct output is supposed to look like this:

andy at dax:~$ /usr/bin/R -q --vanilla
> x <- matrix(c(1, 0, NA, 1), 2, 2) ; y <- matrix(c(1, 0, 0, 2, 1, 0), 3, 2)
> (z <- tcrossprod(x, y))
     [,1] [,2] [,3]
[1,]   NA   NA   NA
[2,]    2    1    0
> identical(z, x %*% t(y))
[1] TRUE

# Note that the correct output above was run on a different machine,
# which happens to be x86-64:

andy at dax:~$ lsb_release -d
Description:	Ubuntu 10.04.3 LTS
andy at dax:~$ uname -a
Linux dax 2.6.32.29+drm33.13-custom #1 SMP Fri Apr 8 13:42:18 EDT 2011 x86_64 GNU/Linux


# Function I used to print out the version number info above:
dtk.R.version <- function() {
   patched.str <- version$status
   if (patched.str != "")
      patched.str <- paste(" (" ,patched.str ,")" ,sep="")
   paste(paste(version$language  ," "
               ,paste(version[c("major","minor")] ,collapse=".")
               ,patched.str  ,sep="")
         ,paste(version[c("year","month","day")] ,collapse="-")
         ,paste("svn.rev" ,version$"svn rev")
         ,version$platform
         ,sep=", " ,collapse=" ")
}

-- 
Andrew Piskorski <atp at piskorski.com>
http://www.piskorski.com/



More information about the R-SIG-Debian mailing list