Skip to content

View() crashy on Ubuntu 9.04

11 messages · Dirk Eddelbuettel, Kjetil Halvorsen, Wacek Kusnierczyk +3 more

#
It's my vague impression that View() is workable on Windows and maybe
on MacOS, but on Ubuntu Linux 9.04 (intrepid) it seems completely
unstable.  I can reliably crash R by trying to look  at a very small,
simple data frame ...

   I was going to try to run with debug turned on, but my installed
version (2.9.0) doesn't have debugging symbols, and I'm having trouble
building the latest SVN version (./configure gives "checking for
recommended packages... ls: cannot access
./src/library/Recommended/boot_*.tar.gz: No such file or directory")


   Can anyone confirm?

  cheers
    Ben Bolker


R --vanilla
R version 2.9.0 (2009-04-17)
i486-pc-linux-gnu

locale:
LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=en_US.UTF-8;LC_COLLATE=en_US.UTF-8;LC_MONETARY=C;LC_MESSAGES=en_US.UTF-8;LC_PAPER=en_US.UTF-8;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=en_US.UTF-8;LC_IDENTIFICATION=C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base
[change focus to the view window, hit "down arrow"]
*** caught segfault ***
address 0x4, cause 'memory not mapped'

Possible actions:
1: abort (with core dump, if enabled)
2: normal R exit
3: exit R without saving workspace
4: exit R saving workspace
Selection: 3


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 260 bytes
Desc: OpenPGP digital signature
URL: <https://stat.ethz.ch/pipermail/r-devel/attachments/20090512/2ddf4ab7/attachment.bin>
#
On 12 May 2009 at 19:46, Ben Bolker wrote:
|   It's my vague impression that View() is workable on Windows and maybe
| on MacOS, but on Ubuntu Linux 9.04 (intrepid) it seems completely
| unstable.  I can reliably crash R by trying to look  at a very small,
| simple data frame ...
| 
|    I was going to try to run with debug turned on, but my installed
| version (2.9.0) doesn't have debugging symbols, and I'm having trouble

Good news: just run
     
     sudo apt-get install r-base-core-dbg

Most (library) packages (lib)foo now also ship (lib)foo-dbg which is provide
something close to pure magic -- just by installing these the already
instrumented gdb knows where to look for them.  See, no more recompiling.
Debug symbols appear out of thin air.  (I have used it only on Debian at home
when debugging R stuff, but it should really work the same for you there on
Ubuntu.)

| building the latest SVN version (./configure gives "checking for
| recommended packages... ls: cannot access
| ./src/library/Recommended/boot_*.tar.gz: No such file or directory")

It's moot as per the above but you need to either run the script to rsync
those in, or configure using 

		    --without-recommended-packages	

As for x11 instability, I happen to spend my daytime hours in from of
Cygwin/X connected to a few Ubuntu machines running R, and of late the
display has been unstable.  I tend to blame the other software first, but
indeed, the most recent change was probably R.  Did anybody experience that?

|    Can anyone confirm?
| 
|   cheers
|     Ben Bolker
| 
| 
| R --vanilla
| 
| > v <- data.frame(1:3,2:4)
| > sessionInfo()
| R version 2.9.0 (2009-04-17)
| i486-pc-linux-gnu
| 
| locale:
| LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=en_US.UTF-8;LC_COLLATE=en_US.UTF-8;LC_MONETARY=C;LC_MESSAGES=en_US.UTF-8;LC_PAPER=en_US.UTF-8;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=en_US.UTF-8;LC_IDENTIFICATION=C
| 
| attached base packages:
| [1] stats     graphics  grDevices utils     datasets  methods   base
| 
| > View(v)
| 
|   [change focus to the view window, hit "down arrow"]
| 
| >
|  *** caught segfault ***
| address 0x4, cause 'memory not mapped'
| 
| Possible actions:
| 1: abort (with core dump, if enabled)
| 2: normal R exit
| 3: exit R without saving workspace
| 4: exit R saving workspace
| Selection: 3

Confirmed. Dies for me too, but from Debian and Ubuntu connected to the same
display (Ubuntu 9.04).

Dirk
#
Actually, gdb seems not to want to debug this -- in either the
Debian-magic version or the one I configured/made on my own system, I
get to the View() command and get
??

  cheers
   Ben Bolker
Kjetil Halvorsen wrote:

  
    
#
And to push the ball a little downcourt:

edd at joe:~$ wajig install r-base-core-dbg
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
  r-base-core-dbg
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 2431kB of archives.
After this operation, 6132kB of additional disk space will be used.
WARNING: The following packages cannot be authenticated!
  r-base-core-dbg
Install these packages without verification [y/N]? y
Get:1 http://ron jaunty/ r-base-core-dbg 2.9.0-1jaunty0 [2431kB]
Fetched 2431kB in 8s (276kB/s)
Selecting previously deselected package r-base-core-dbg.
(Reading database ... 345934 files and directories currently installed.)
Unpacking r-base-core-dbg (from .../r-base-core-dbg_2.9.0-1jaunty0_i386.deb) ...
Setting up r-base-core-dbg (2.9.0-1jaunty0) ...
edd at joe:~$ R -d gdb
GNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...
(gdb) run
Starting program: /usr/lib/R/bin/exec/R

R version 2.9.0 (2009-04-17)
Copyright (C) 2009 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.
[Thread debugging using libthread_db enabled]
Error while reading shared library symbols:
Cannot find new threads: generic error
Cannot find new threads: generic error
(gdb) c
Continuing.
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb77026c0 (LWP 15067)]
0xb70e685e in XmbLookupString () from /usr/lib/libX11.so.6
(gdb) where
#0  0xb70e685e in XmbLookupString () from /usr/lib/libX11.so.6
#1  0xb73a9d48 in doSpreadKey (DE=0x8bfd040, key=<value optimized out>, event=0xbfed68d8) at dataentry.c:1828
#2  0xb73aa51e in R_ProcessX11Events (data=0x0) at dataentry.c:1649
#3  0xb7f85b1f in R_runHandlers (handlers=0xb8024060, readMask=0xb80ba2e0) at sys-std.c:378
#4  0xb7f874b9 in Rstd_ReadConsole (prompt=0x8b51398 "> ", buf=0xbfed7a80 "View(v)\n", len=4096, addtohistory=1) at sys-std.c:913
#5  0xb7f83d95 in R_ReadConsole (prompt=0x8b51398 "> ", buf=0xbfed7a80 "View(v)\n", len=4096, addtohistory=1) at system.c:73
#6  0xb7eb1853 in Rf_ReplIteration (rho=0x8b52874, savestack=0, browselevel=0, state=0xbfed7a74) at main.c:205
#7  0xb7eb1c13 in R_ReplConsole (rho=0x8b52874, savestack=0, browselevel=0) at main.c:306
#8  0xb7eb1cb5 in run_Rmainloop () at main.c:966
#9  0xb7eb1cdc in Rf_mainloop () at main.c:973
#10 0x080487c6 in main (ac=65364, av=0x3a9cad) at Rmain.c:33
#11 0xb7c42775 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
#12 0x080486b1 in _start () at ../sysdeps/i386/elf/start.S:119
(gdb)

Dirk
On 12 May 2009 at 22:43, Kjetil Halvorsen wrote:
| I can reproduce this too.
| Run  from within emacs:
| 
| > v <- data.frame(1:3,2:4)
| > sessionInfo()
| R version 2.9.0 (2009-04-17)
| i686-pc-linux-gnu
| 
| locale:
| LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=en_US.UTF-8;LC_COLLATE=en_US.UTF-8;LC_MONETARY=C;LC_MESSAGES=en_US.UTF-8;LC_PAPER=en_US.UTF-8;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=en_US.UTF-8;LC_IDENTIFICATION=C
| 
| attached base packages:
| [1] stats     graphics  grDevices utils     datasets  methods   base
| > View(v)
| >
|  *** caught segfault ***
| address 0x4, cause 'memory not mapped'
| 
| Possible actions:
| 1: abort (with core dump, if enabled)
| 2: normal R exit
| 3: exit R without saving workspace
| 4: exit R saving workspace
| Selection: 3
| 
| Process R exited abnormally with code 70 at Tue May 12 22:41:55 2009
| 
| Kjetil
| 
|
| On Tue, May 12, 2009 at 9:59 PM, Dirk Eddelbuettel <edd at debian.org> wrote:
| 
| >
| > On 12 May 2009 at 19:46, Ben Bolker wrote:
| > |   It's my vague impression that View() is workable on Windows and maybe
| > | on MacOS, but on Ubuntu Linux 9.04 (intrepid) it seems completely
| > | unstable.  I can reliably crash R by trying to look  at a very small,
| > | simple data frame ...
| > |
| > |    I was going to try to run with debug turned on, but my installed
| > | version (2.9.0) doesn't have debugging symbols, and I'm having trouble
| >
| > Good news: just run
| >
| >     sudo apt-get install r-base-core-dbg
| >
| > Most (library) packages (lib)foo now also ship (lib)foo-dbg which is
| > provide
| > something close to pure magic -- just by installing these the already
| > instrumented gdb knows where to look for them.  See, no more recompiling.
| > Debug symbols appear out of thin air.  (I have used it only on Debian at
| > home
| > when debugging R stuff, but it should really work the same for you there on
| > Ubuntu.)
| >
| > | building the latest SVN version (./configure gives "checking for
| > | recommended packages... ls: cannot access
| > | ./src/library/Recommended/boot_*.tar.gz: No such file or directory")
| >
| > It's moot as per the above but you need to either run the script to rsync
| > those in, or configure using
| >
| >                    --without-recommended-packages
| >
| > As for x11 instability, I happen to spend my daytime hours in from of
| > Cygwin/X connected to a few Ubuntu machines running R, and of late the
| > display has been unstable.  I tend to blame the other software first, but
| > indeed, the most recent change was probably R.  Did anybody experience
| > that?
| >
| > |    Can anyone confirm?
| > |
| > |   cheers
| > |     Ben Bolker
| > |
| > |
| > | R --vanilla
| > |
| > | > v <- data.frame(1:3,2:4)
| > | > sessionInfo()
| > | R version 2.9.0 (2009-04-17)
| > | i486-pc-linux-gnu
| > |
| > | locale:
| > |
| > LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=en_US.UTF-8;LC_COLLATE=en_US.UTF-8;LC_MONETARY=C;LC_MESSAGES=en_US.UTF-8;LC_PAPER=en_US.UTF-8;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=en_US.UTF-8;LC_IDENTIFICATION=C
| > |
| > | attached base packages:
| > | [1] stats     graphics  grDevices utils     datasets  methods   base
| > |
| > | > View(v)
| > |
| > |   [change focus to the view window, hit "down arrow"]
| > |
| > | >
| > |  *** caught segfault ***
| > | address 0x4, cause 'memory not mapped'
| > |
| > | Possible actions:
| > | 1: abort (with core dump, if enabled)
| > | 2: normal R exit
| > | 3: exit R without saving workspace
| > | 4: exit R saving workspace
| > | Selection: 3
| >
| > Confirmed. Dies for me too, but from Debian and Ubuntu connected to the
| > same
| > display (Ubuntu 9.04).
| >
| > Dirk
| >
| > --
| > Three out of two people have difficulties with fractions.
| >
| > ______________________________________________
| > R-devel at r-project.org mailing list
| > https://stat.ethz.ch/mailman/listinfo/r-devel
| >
#
On 12 May 2009 at 22:58, Ben Bolker wrote:
|   Actually, gdb seems not to want to debug this -- in either the
| Debian-magic version or the one I configured/made on my own system, I
| get to the View() command and get
| 
| >> View(v)
| > [Thread debugging using libthread_db enabled]
| > Error while reading shared library symbols:
| > Cannot find new threads: generic error
| > Cannot find new threads: generic error

Just type 'c' to continue; see the mail I must have sent essentially at the
same time.  Threading can be dicey. I am not sure if this first stop in gdb is
indicative of anything.

Dirk
#
Ben Bolker wrote:
on my 8.04, r is reliable at crashing with, e.g.,

    View(1)

with a subsequent attempt to move through the spreadsheet with an arrow
key.  this always causes a segfault.
tools/rsync-recommended


vQ
#
Hi

2009/5/13 Dirk Eddelbuettel <edd at debian.org>:
<snip>
It is generated by XmbLookupString and Xutf8LookupString because
this doesn't make Input context of X11 when dataeditor is View.

static char *GetCharP(DEEvent * event)
{
     <snip>
            XmbLookupString(ioic, (XKeyEvent *)event, /* ioic at view
time is NULL*/
                            text, sizeof(text) - clength,
                            &iokey, &status);
     <snip>
}

I think that this only has to limit GetCharP to isEditor=TRUE.
moreover View() was strange operation of  "page down".


http://prs.ism.ac.jp/~nakama/working/dataentry.patch

I think that I improve the above-mentioned by this patch.
#
This patch fixes the problem for me with latest R-devel.  Thanks!
(This kind of X-hacking would take me hours if not days to figure out ...)

  cheers
    Ben Bolker
Ei-ji Nakama wrote:

  
    
2 days later
#
Thank you, included in R-patched and R-devel now.

BTW, it looks like the original problem is in MBCS locales only, which 
postdate the X11 View() code (but we had patches from Mr Nakama: 
input contexts are needed for entering CJK languages).

I do wonder sometimes if people who only work with data in ASCII or in 
a Western European language covered by Latin-1 realize the extent of 
the overhead that using a UTF-8 locale implies, especially for the X11 
functionality.  I still use a Latin-1 locale on Linux much of the 
time.  There are a lot of optimizations in the R code for ASCII-only 
data, but rather fewer in the I/O areas.
On Wed, 13 May 2009, Ei-ji Nakama wrote:

            

  
    
#
Prof Brian Ripley wrote:
[snip]

 thanks!
Speaking for myself, I certainly don't -- but even as a fairly long-time
Linux user it
would rarely occur to me to change the default locale set by my OS for the
purposes
of working with R (maybe it will now) ...