[Rd] Very hard to reproduce bug (?) in R-devel
winstonchang1 at gmail.com
Tue Apr 4 22:29:40 CEST 2017
I've done some more investigation into the problem, and it is very
difficult to pin down. What it looks like is happening is roughly like this:
- `p` is an environment and `p$e` is also an environment.
- There is a loop. In each iteration, it looks for one item in `p$e`, saves
it in a variable `x`, then removes that item from `p$e`. Then it invokes
`x()`. The loop runs again, until there are no more items in `p$e`.
The problem is that `ls(p$e)` sometimes returns the wrong values -- it
returns the values that it had in previous iterations of the loop. The
behavior is very touchy. Almost any change to the code will slightly change
the behavior; sometimes the `ls()` returns values from a different
iteration of the loop, and sometimes the problem doesn't happen at all.
I've put a Dockerfile and instructions for reproducing the problem here:
I think that I've gotten about as far with this as I can, though I'd be
happy to provide more information if anyone wants to take look at the
[[alternative HTML version deleted]]
More information about the R-devel