From edd at debian.org  Wed Dec 16 16:28:54 2015
From: edd at debian.org (Dirk Eddelbuettel)
Date: Wed, 16 Dec 2015 09:28:54 -0600
Subject: [Rd] Mystifying SEGFAULT on 3.2.3 but not 3.2.2
In-Reply-To: <CAGB9c4B3KFGWd371+7DJb84zKw3X3L28qtSyappPY9CZA57y2w@mail.gmail.com>
References: <CAGB9c4B3KFGWd371+7DJb84zKw3X3L28qtSyappPY9CZA57y2w@mail.gmail.com>
Message-ID: <22129.33590.119064.973586@max.nulle.part>


Gert,

On 16 December 2015 at 12:06, Gert van Valkenhoef wrote:
| I recently upgraded to 3.2.3 and am getting mystifying errors with my
| in-development code (available at
| https://github.com/gertvv/gemtc/tree/feature/regression). Every few hundred
| LPs that I solve using the rcdd package will result in a SEGFAULT in the
| garbage collector (address 0x10, cause 'memory not mapped') or an error
| about a list not existing. Downgrading to 3.2.2 works, but *only* after
| completely removing my local R packages and re-installing them. A

I wish I could tell you something more encouraging -- but this _sometimes_
happens with prebuilt R, or prebuilt packages.  We try try chase this, and
when we do batch runs of R CMD check over all reverse depends we end up
rebuilding.

I was just bitten by this when upgrading to Ubuntu 15.10 as it brings in
g++-5.2 which has a _known_ ABI transition for C++11/14.  About 15% of
packages got 'random' (but repeatable) seg.faults when there were none
before.  And that went away with a proper R version also built with a gcc-5.2
toolchain.

So in short: check your toolchain. Things may then go away. If they don't
then there may be a real bug.

| subsequent upgrade to 3.2.3 will again be broken, and even more
| mysteriously it will also break a re-downgrade to 3.2.2 until I again purge
| my local packages and re-install them.
| 
| To downgrade I am using (with the CRAN ubuntu mirror enabled):
| sudo apt-get purge r-base-core
| sudo rm -rf ~/R

[ I am mildly opposed to ~/R. I unset R_LIBS_USER in /etc/R/Renviron and just
make sure I am part of the group owning /usr/local/lib/R/site-library. Then
an ordinary users can install there. ] 

| sudo apt-get install r-base-core=3.2.2-1trusty0 r-base-dev=3.2.2-1trusty0
| r-recommended=3.2.2-1trusty0
| sudo apt-get install r-cran-rjags
| R -e "install.packages(c('devtools','igraph','meta','truncnorm','rcdd'))"

[ I am very partial to using 'install.r devtools igraph meta truncnorm rcdd'
on the command-line where install.r is a part of r-cran-littler, or littler
now on CRAN, which I link into /usr/local/bin. ]

| The code that produces a SEGFAULT (usually after 5-15 iterations) under
| 3.2.3, but not 3.2.2:
| library(devtools)
| load_all('gemtc')
| for (i in 1:100) { print(i); mtc.model(thrombolytic) }
| (note that the SEGFAULT also happens without devtools)
| 
| The sessionInfo() in 3.2.2:
| 
| R version 3.2.2 (2015-08-14)
| Platform: x86_64-pc-linux-gnu (64-bit)
| Running under: Ubuntu 14.04.3 LTS

We have a dedicated list for running R on Debian/Ubuntu/... systems:
r-sig-debian.  Consider lurking/posting there.

Cheers,  Dirk

 
| locale:
|  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C
|  [3] LC_TIME=nl_NL.UTF-8        LC_COLLATE=en_US.UTF-8
|  [5] LC_MONETARY=nl_NL.UTF-8    LC_MESSAGES=en_US.UTF-8
|  [7] LC_PAPER=nl_NL.UTF-8       LC_NAME=C
|  [9] LC_ADDRESS=C               LC_TELEPHONE=C
| [11] LC_MEASUREMENT=nl_NL.UTF-8 LC_IDENTIFICATION=C
| 
| attached base packages:
| [1] stats     graphics  grDevices utils     datasets  methods   base
| 
| other attached packages:
| [1] gemtc_0.8       coda_0.16-1     lattice_0.20-33 devtools_1.9.1
| 
| loaded via a namespace (and not attached):
|  [1] Rcpp_0.12.2     roxygen2_5.0.1  rcdd_1.1-9      digest_0.6.8
|  [5] truncnorm_1.0-7 grid_3.2.2      plyr_1.8.3      meta_4.3-2
|  [9] magrittr_1.5    stringi_1.0-1   rjags_4-4       tools_3.2.2
| [13] stringr_1.0.0   igraph_1.0.1    memoise_0.2.1
| 
| A core dump is here:
| https://drive.google.com/a/rug.nl/file/d/0BxhVLNPmwLrycTYtOHNxNXZTMEk/view?usp=drive_web
| 
| I have tried debugging this but am stumped. Any help would be greatly
| appreciated!
| 
| Kind regards,
| 
| Gert van Valkenhoef
| 
| 	[[alternative HTML version deleted]]
| 
| ______________________________________________
| R-devel at r-project.org mailing list
| https://stat.ethz.ch/mailman/listinfo/r-devel
-- 
http://dirk.eddelbuettel.com | @eddelbuettel | edd at debian.org



[Rd] Mystifying SEGFAULT on 3.2.3 but not 3.2.2
Dirk Eddelbuettel