Skip to content

error in memCompress() in make check

4 messages · Petr Savicky, Brian Ripley

#
Dear R developers:

When i run "make check" in R-patched_2011-02-12 and R-devel_2011-02-22
on a specific machine, the test fails and the file

  tests/Examples/base-Ex.Rout.fail

ends with

  > txt.xz <- memCompress(txt, "x")
  Error in memCompress(txt, "x") : internal error 5 in memCompress
  Execution halted

The error may be reproduced using commands

  txt <- readLines(file.path(R.home("doc"), "COPYING"))
  txt.xz <- memCompress(txt, "x")

in both the above installed versions. The machine is CentOS
release 5.4 (Final) under VMware.

I did not observe this error on other machines, some of which are
also CentOS.

For the development version, sessionInfo() is

  R version 2.13.0 Under development (unstable) (2011-02-22 r54523)
  Platform: i686-pc-linux-gnu (32-bit)
  
  locale:
   [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
   [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
   [5] LC_MONETARY=C              LC_MESSAGES=en_US.UTF-8   
   [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
   [9] LC_ADDRESS=C               LC_TELEPHONE=C            
  [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       
  
  attached base packages:
  [1] stats     graphics  grDevices utils     datasets  methods   base     

gcc --version

  gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-46)

Petr Savicky.
#
So it seems that there is something wrong with the liblzma library 
used on that machine.  Did it use the version supplied with R or an 
external library (which is the default if one is found)?  My first 
step would be to force the internal version via --with-system-xz=no.

That error appears to be LZMA_MEM_ERROR: see xz/api/lzma/base.h .
On Tue, 22 Feb 2011, Petr Savicky wrote:

            

  
    
#
On Tue, Feb 22, 2011 at 11:25:50AM +0000, Prof Brian Ripley wrote:
Thank you for your reply.

I tried 

  ./configure --with-x=no --with-system-xz=no

in a clean R-devel_2011-02-22 and the result of make check is the same.

The commands

  txt <- readLines(file.path(R.home("doc"), "COPYING"))
  txt.xz <- memCompress(txt, "x")

do not produce an error, if the compiled R runs in the same shell,
where "make check" was run. However, they produce the error, if R is
started in a new shell.

The command

  find /usr -name "liblzma*"

has empty output.

Petr Savicky.
#
On Tue, Feb 22, 2011 at 01:38:07PM +0100, Petr Savicky wrote:
...
Athough i did see the above two lines with no error on my screen, the
change of the behavior is not reproducible. I am sorry, i probably
mixed up windows or something.

According to a repeated test, the above two lines produce the error

  Error in memCompress(txt, "x") : internal error 5 in memCompress

on the machine described in the first email, even if --with-system-xz=no
was used for configuration.

Petr Savicky.