Menu

Problem with .GlobalEnv ?

Help
nono_231
2006-10-21
2013-01-15
  • nono_231

    nono_231 - 2006-10-21

    Hello!

    Rkward is a GUI like the one I was thinking that a GUI for R should be. So it is great!

    I am on ubuntu 6.10. I have compiled R-2.4.0 myself with option --enable-R-shlib. I also compile rkward. The previous version of rkward that I had (0.3.7) worked fine both with R 2.3.1 and 2.4.0.

    But with the 0.4.0 I get the following error

    Command failed (other)
    failed command was: '.rk.get.structure (as.environment (".GlobalEnv"), ".GlobalEnv", envlevel=-1, namespacename="")'
    - error message was: 'Error: evaluation nested too deeply: infinite recursion / options(expressions=)?

    and stalls on starting R engine stage, if I try to start on my working directory (where I have all the data using in R), or goes on if I start rkward drom another directory that does not contain any data.

    During the configuration and installation process did not have any problems.

    Is it a bug or is it something I have done wrong?

     
    • nono_231

      nono_231 - 2006-10-21

      Bring it again in my mind, I don't remember to work with R 2.4.0 and rkward, but with R 2.3.1. Probably a change in R 2.4.0 creates this problem. I tried to open an older version of R (without rkward) and I got the same error message.

      I hope this helps.

       
    • Thomas Friedrichsmeier

      Hi!

      The whole .rk.get.structure ()-thing is new in rkward 0.4.0, so it probably isn't a problem in R but in rkward. I've used R version 2.4.0 for most testing, here, so that should not be the problem, either.

      Did I understand this correctly:
      If you run rkward on a directory with .Rdata, you get the crash. If you run rkward in a clean directory without any data, there is no crash?

      If so, perhaps you could try the following:

      1) Start a plain R session in the directory with the data.

      2) Run the following:
      library (rkward)
      .rk.get.structure (as.environment (".GlobalEnv"), ".GlobalEnv", envlevel=-1, namespacename="")

      Do you get the same error message outside rkward? If so
      3) Run
      traceback ()

      and post the result
      (you can exit your R session with base::q ()).

      Can you mail me a copy of your workspace (.Rdata) to experiment with, or does it contain sensitive data?

      Or did I misunderstand you altogether?

       
      • Thomas Friedrichsmeier

        One more idea:
        4) What is the result of
        options("expressions")
        when running in plain R in your workspace directory?

        5) What is the result of
        grep "expressions" ~/.kde/share/config/rkwardrc

        Thanks!

         
        • nono_231

          nono_231 - 2006-10-21

          > options("expressions")
          $expressions
          [1] 5000

          igoutsou@ubuntu2310:~/R$ grep "expressions" ~/.kde/share/config/rkwardrc
          expressions=5000

          I tried the quantian live dvd which has the R 2.2.1 version. I copied the .Rdata file, and when I tried to start R from the dir with the above file i got the same error or similar error about globalenv. That's why I said about the version of R.

          I will send an .Rdata file which It was created when I started rkward in an empty dir with no Rdata. This was the only time that it worked. When I tried to start rkward from that dir it had the same problem.

          I post all the sequence from the time rkward starts till it stalls.
          igoutsou@ubuntu2310:~$ rkward
          Debug-flags as decimal: 8191
          QSettings::sync: filename is null/empty
          kdecore (KAction): WARNING: KAction::insertKAccel( kaccel = 0x821cd98 ): KAccel object already contains an action name "window_close"
          *** attempt to put segment in horiz list twice
          *** attempt to put segment in horiz list twice

          R version 2.4.0 (2006-10-03)
          Copyright (C) 2006 The R Foundation for Statistical Computing
          ISBN 3-900051-07-0

          R is free software and comes with ABSOLUTELY NO WARRANTY.
          You are welcome to redistribute it under certain conditions.
          Type 'license()' or 'licence()' for distribution details.

            Natural language support but running in an English locale

          R is a collaborative project with many contributors.
          Type 'contributors()' for more information and
          'citation()' on how to cite R or R packages in publications.

          Type 'demo()' for some demos, 'help()' for on-line help, or
          'help.start()' for an HTML browser interface to help.
          Type 'q()' to quit R.

          Loading Tcl/Tk interface ... done
          [Previously saved workspace restored]

          Command failed (other)
          failed command was: '.rk.get.structure (as.environment (".GlobalEnv"), ".GlobalEnv", envlevel=-1, namespacename="")'
          - error message was: 'Error: evaluation nested too deeply: infinite recursion / options(expressions=)?
          '
          Command failed (other)
          failed command was: '.rk.get.structure (as.environment (".GlobalEnv"), ".GlobalEnv", envlevel=-1, namespacename="")'
          - error message was: 'Error: evaluation nested too deeply: infinite recursion / options(expressions=)?
          '
          Assert failed at robjectlist.cpp - function getGlobalEnv line 269

          Assert failed at robjectlist.cpp - function getGlobalEnv line 269
          Assert failed at rcontainerobject.cpp - function findChild line 202
          Assert failed at rkmodificationtracker.cpp - function addObject line 105
          Assert failed at rkeditordataframe.cpp - function rCommandDone line 139
          Assert failed at rcontainerobject.cpp - function findChild line 202
          Assert failed at rkmodificationtracker.cpp - function addObject line 105
          Assert failed at rkeditordataframe.cpp - function rCommandDone line 139
          Assert failed at rcontainerobject.cpp - function findChild line 202
          Assert failed at rkmodificationtracker.cpp - function addObject line 105
          Assert failed at rkeditordataframe.cpp - function rCommandDone line 139
          Assert failed at rcontainerobject.cpp - function findChild line 202
          Assert failed at rkmodificationtracker.cpp - function addObject line 105
          Assert failed at rkeditordataframe.cpp - function rCommandDone line 139

           
      • nono_231

        nono_231 - 2006-10-21

        "Did I understand this correctly:
        If you run rkward on a directory with .Rdata, you get the crash. If you run rkward in a clean directory without any data, there is no crash? "

        Yes that's exactly what I mean.

        "If so, perhaps you could try the following:

        1) Start a plain R session in the directory with the data.

        2) Run the following:
        library (rkward)
        .rk.get.structure (as.environment (".GlobalEnv"), ".GlobalEnv", envlevel=-1, namespacename="")

        Do you get the same error message outside rkward? If so
        3) Run
        traceback () "

        I don't get any error this way.

        I mailed you a copy of .RData already.

        Thanks for your time.

         
        • Thomas Friedrichsmeier

          Having the .RData file was very helpful, indeed, and I believe, I have tracked down the problem. Could you try the following:

          Download this file:
          http://svn.sourceforge.net/viewvc/\*checkout*/rkward/trunk/rkward/rkward/rbackend/rpackages/rkward/R/internal.R?revision=895

          Copy to
          /your/rkward/sources/rkward/rbackend/rpackages/rkward/R/internal.R
          (overwriting the old version of internal.R)

          Run
          # make
          and (as root)
          # make install

          Does this fix the problem?

           
    • nono_231

      nono_231 - 2006-10-21

      Yes it works, thanx.

      I configured, made and sudo made install using the new internal.R and now it works fine!

      Thanx a lot again.