From edd at debian.org  Wed Apr  5 23:32:04 2017
From: edd at debian.org (Dirk Eddelbuettel)
Date: Wed, 5 Apr 2017 16:32:04 -0500
Subject: [Rd] Very hard to reproduce bug (?) in R-devel
In-Reply-To: <CAFOpNVFtpafP95j5_OJYjDz=5EDee8ymC4zsrNfas2rsZ3LbYw@mail.gmail.com>
References: <CAFOpNVFQyz_UtDkuZFxa9ttCcQc6wvN7bDb5AbfsfTT_HuHeog@mail.gmail.com>
 <CAFOpNVG6RtN47SVvg_L1HKYSOPccnXgWjMX3ouLGxjCKXovc=Q@mail.gmail.com>
 <CAFOpNVGO4DEVE+=0Ujysb+zPksyJGA8t1mkB9929wSndJTS0gA@mail.gmail.com>
 <22756.41965.160956.187187@stat.math.ethz.ch>
 <CAFOpNVE95J2Jb3bmTMD1t1vXWYEiGzM1iw-_CV134W=8B_z9LQ@mail.gmail.com>
 <30D28A63376088428E8318DD67FD407F72F8AD@ny-mailstore1.walleyetrading.net>
 <CAFOpNVFtpafP95j5_OJYjDz=5EDee8ymC4zsrNfas2rsZ3LbYw@mail.gmail.com>
Message-ID: <22757.25172.649683.95618@max.eddelbuettel.com>


On 5 April 2017 at 15:46, Winston Chang wrote:
| On Wed, Apr 5, 2017 at 2:24 PM, Robert McGehee <rmcgehee at walleyetrading.net>
| wrote:
| 
| > Winston,
| > I had a similar experience to you tracking down an insanely difficult bug
| > in my R code that "disappeared" whenever slight changes were made to the
| > script (e.g. like adding cat() statements). In my case, it coincided with
| > my over-eager compilation of R and its library stack, as I was also
| > experimenting with a cutting edge version of the gcc compiler as well as
| > what I thought were innocuous performance enhancing CFLAGS like -O3/-Ofast
| > -march=native. After downgrading gcc and recompiling everything (R and
| > BLAS) without the extra flags, the problem went away. Not saying this is
| > your problem, just sharing my similar experience.
| >
| >
| Thanks Robert. I'm glad that I'm not the only one who's encountered an
| issue like this. "Insanely difficult" is an apt description. :)
| 
| I've been using the rocker/r-devel for testing. It compiles R with the
| following CFLAGS:
|   -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong
| -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g
| It looks like it gets those settings from running R CMD config CFLAGS with
| the already-installed version of R (3.3.3) which comes from a .deb package.
|   https://github.com/rocker-org/rocker/blob/master/r-devel/Dockerfile#L76

That's a Debian default a Policy-conforming offical package must use.

For Docker you get these from the (prebuild) .deb package, you get it when
you do r-devel by hand as they come back in via R CMD CONFIG:

  https://github.com/rocker-org/rocker/blob/master/r-devel/Dockerfile#L76-L77

You could undo those two lines / set CFLAGS and CXXFLAGS by hand.
 
| I've also compiled R (again, in Docker) and tested with that, and gotten
| the same results. It basically uses just `./configure
| --without-recommended-packages`
| and then `make`.

Then these options should not come in.  But are you saying that the Heisenbug
behaviour happens irrespective of the compilation flags?

Dirk

-- 
http://dirk.eddelbuettel.com | @eddelbuettel | edd at debian.org



[Rd] Very hard to reproduce bug (?) in R-devel
Dirk Eddelbuettel