[R-SIG-Mac] *** caught bus error *** address 0x114382544, cause 'non-existent physical address'
Richard R. Liu
richard.liu at pueo-owl.ch
Mon Nov 30 21:33:25 CET 2009
Hi Simon,
I think I've found the problem: filehash needs to be rebuilt.
The data that I've been using the problematic expressions on resides
in a filehash database. Having reduced the problem to one particular
data frame of two columns and 1000 rows, I just copied it to its own
database, zipped it, and attached it to an email containing
instructions on how to reproduce the problem, when I decided I should
test whether you could indeed reproduce the problem by following my
instructions. And, of course, everything worked just as I had not
expected, i.e., there was no bus error.
So I copied the data frame from the small database that I was going to
send to you to the original, and there the problem occurred. I could
not reproduce the problem, however, if I copied the original data
frame to my workspace and forced R to actually instantiate the copy
before running the problematic script. So the problem seemed to have
something to do with filehash and the size of the database. I also
recalled that I had no problem with the script if I ran R in 32-bit
mode. I therefore tried reinstalling the filehash binary, but that
did not solve the problem. Then, I installed it from the source.
That evidently is what was required.
So I guess it only needs a rebuild so that other folks do not
experience the same problem.
Regards,
Richard
Richard R. Liu
Dittingerstr. 33
CH-4053 Basel
Switzerland
Tel.: +41 61 331 10 47
Mobil: +41 79 708 67 66
Email: richard.liu at pueo-owl.ch
On Nov 30, 2009, at 17:18 , Simon Urbanek wrote:
> Richard,
>
> I didn't touch anything, but then you didn't supply a reproducible
> example so we can't do much about it (the trace is unfortunately
> bogus). My next step woul dbe to try it in valgrind if I could
> reproduce it ...
>
> Cheers,
> Simon
>
> On Nov 30, 2009, at 11:01 , Richard R. Liu wrote:
>
>> This problem disappeared in patched releases soon after I replied
>> to Simon that I was unable to obtain the information that he
>> required from the debugger. After checking a few releases I quite
>> monitoring the problem. I assumed that it had been fixed with
>> comment. However, today, the patched release dated 2009-11-29 has
>> the problem once again. I have tried going back to the patched
>> releases of 2009-11-27 and 2009-11-22, the only ones for which I
>> have kept installers here at work. Both have the problem. In
>> neither can I obtain the debugging information that Simon requested
>> when the problem initially arose. Can somebody tell me the current
>> status of the problem, and when it might be fixed (again)? It
>> occurs at an extremely inconvenient time in my project.
>>
>> Thanks,
>>
>> Richard R. Liu
>> Dittingerstr. 33
>> CH-4053 Basel
>> Switzerland
>>
>> Tel.: +41 61 331 10 47
>> Mobil: +41 79 708 67 66
>> Email: richard.liu at pueo-owl.ch
>>
>>
>>
>> On Nov 18, 2009, at 21:07 , Simon Urbanek wrote:
>>
>>> Richard,
>>>
>>> in order to track this down, please start R64, type
>>>
>>> Sys.getpid()
>>>
>>> and note down the number. Then in a separate window open Terminal
>>> and type
>>>
>>> gdb
>>>
>>> Then on the gdb console (it will just say "(gdb)") type
>>>
>>> attach n
>>>
>>> where n is the number from above. It will do something for a while
>>> and when it comes back in the console, type
>>>
>>> c
>>>
>>> Then do your work in R until you get a crash. Once you do, you
>>> will see something happening in the gdb console. Then type
>>>
>>> bt
>>>
>>> and copy/paste everything that gdb printed since you typed "c" and
>>> send it to me.
>>>
>>> Thanks,
>>> Simon
>>>
>>> -----
>>>
>>> Practical example -- in R:
>>>
>>> > Sys.getpid()
>>> [1] 19381
>>>
>>> in Terminal:
>>>
>>> ginaz:~$ gdb
>>> GNU gdb 6.3.50-20050815 (Apple version gdb-962) (Sat Jul 26
>>> 08:14:40 UTC 2008)
>>> [...]
>>> This GDB was configured as "i386-apple-darwin".
>>> (gdb) attach 19381
>>> Attaching to process 19381.
>>> Reading symbols for shared libraries . done
>>> [...]
>>> 0x9428a6fa in select$DARWIN_EXTSN ()
>>> (gdb) c
>>> Continuing.
>>>
>>> Program received signal EXC_BAD_ACCESS, Could not access memory.
>>> Reason: KERN_PROTECTION_FAILURE at address: 0x00000003
>>> 0x00412d09 in SET_SYMVALUE (x=0x1007110, v=0x0) at ../../../../
>>> R-2.10-branch/src/main/memory.c:2809
>>> 2809 void (SET_SYMVALUE)(SEXP x, SEXP v) { CHECK_OLD_TO_NEW(x, v);
>>> SYMVALUE(x) = v; }
>>> (gdb) bt
>>> #0 0x00412d09 in SET_SYMVALUE (x=0x1007110, v=0x0) at ../../../../
>>> R-2.10-branch/src/main/memory.c:2809
>>> #1 0x0041068e in Rf_ReplIteration (rho=0x1023c38, savestack=0,
>>> browselevel=0, state=0xbfffe53c) at ../../../../R-2.10-branch/src/
>>> main/main.c:263
>>> #2 0x00410a40 in R_ReplConsole (rho=0x1023c38, savestack=0,
>>> browselevel=0) at ../../../../R-2.10-branch/src/main/main.c:311
>>> #3 0x0041129b in run_Rmainloop () at ../../../../R-2.10-branch/
>>> src/main/main.c:964
>>> #4 0x00001ff0 in main (ac=1, av=0xbffff5c8) at ../../../../R-2.10-
>>> branch/src/main/Rmain.c:33
>>> (gdb) q
>>> The program is running. Quit anyway (and detach it)? (y or n) y
>>> Detaching from process 19381 thread 0x613.
>>>
>>>
>>> On Nov 18, 2009, at 14:39 , Richard R. Liu wrote:
>>>
>>>> I am experiencing a curious error running R64 (2009-11-18 r50482)
>>>> on a MacBook Pro 17" Unibody early 2009 with 8GB RAM. In the
>>>> console excerpt below sentences.1000.clustered is a dataframe
>>>> consisting of two vectors, sent and cluster. sent is a vector of
>>>> 1000 sentences chosen at random from over 3 million, and cluster
>>>> is a vector of integers denoting to which of 5 clusters the
>>>> sentence belongs. For each cluster I want to display the
>>>> sentences that belong to it as follows:
>>>>
>>>>
>>>> R version 2.10.0 Patched (2009-11-18 r50482)
>>>> 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.
>>>>
>>>> [R.app GUI 1.30 (5521) x86_64-apple-darwin9.8.0]
>>>>
>>>> [Workspace restored from /Users/richard/.RData]
>>>>
>>>> > library(filehash)
>>>> filehash: Simple key-value database (2.0-1 2008-12-19)
>>>> > db <- dbInit("/Volumes/Work on RDR Test Documents/R Databases/
>>>> DB_TXT", type = "RDS")
>>>> > dbLoad(db)
>>>> >
>>>> > sent.clust <- sentences.1000.clustered
>>>> > i.clust.2 <- which(sent.clust$cluster == 2)
>>>> > attributes(sent.clust)
>>>> $names
>>>> [1] "sent" "cluster"
>>>>
>>>> $row.names
>>>> [1] 1 2 3 4 5 6 7 8 9 10 11 12
>>>> 13 14 15 16 17 18 19 20 21 22 23 24 25
>>>> 26 27 28 29
>>>> ...
>>>> [987] 987 988 989 990 991 992 993 994 995 996 997
>>>> 998 999 1000
>>>>
>>>> $class
>>>> [1] "data.frame"
>>>>
>>>> > i.clust.2 <- which(sent.clust$cluster == 2)
>>>> > nchar(sent.clust$sent[i.clust.2])
>>>> [1] 232 419 787 1010 1926 357 2865 657 560 213
>>>> 2175 2363 1300 359 331 965 581 732 398 245 1650
>>>> 25893 1289 510
>>>> [25] 1714 524 747 2378 465 651 2253 215 460 253
>>>> 2475 554 1130 529 261 1413 418 2168 1569 1538 301
>>>> 2506 1163 3036
>>>> [49] 1445 199 1231 370 1307 371 379 232 1297
>>>> 500 409 481 2187 314 730 1634 971 860 362 506
>>>> 1606 394 145 480
>>>> [73] 1582 1471 1269 308 1113 444 990 298 1644
>>>> 445 357 1204 322 638 2182 805 1545 368 1461 1347
>>>> 649 399 1094 1624
>>>> [97] 14605 1637 269 503 502 2145 1398 481 122 2248
>>>> > sent.clust$sent[i.clust.2]
>>>> [1] "(patient continuing ...)
>>>> ______________________________________________________________________________________________________________________________________
>>>> Investigator text for Adverse Events encoded using MedDRA
>>>> version 11.0. "
>>>> [2]
>>>> *** caught bus error ***
>>>> address 0x114382544, cause 'non-existent physical address'
>>>>
>>>> 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:
>>>>
>>>> The point of
>>>>
>>>> > i.clust.2 <- which(sent.clust$cluster == 2)
>>>> > nchar(sent.clust$sent[i.clust.2])
>>>>
>>>> is to try to isolate the problem. Indeed, the more compact
>>>> sent.clust$sent[which(sent.clust$cluster == 2)] work when I start
>>>> R in 32-bit mode. In 64-bit mode, attempting to display the
>>>> sentences in cluster 5 also fails, whereas for clusters 1, 3, 4
>>>> it succeeds. In 32-bit mode, I have experienced no such problem.
>>>>
>>>> Does anybody have any ideas about what is wrong?
>>>>
>>>> Regards,
>>>> Richard
>>>>
>>>> _______________________________________________
>>>> R-SIG-Mac mailing list
>>>> R-SIG-Mac at stat.math.ethz.ch
>>>> https://stat.ethz.ch/mailman/listinfo/r-sig-mac
>>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2429 bytes
Desc: not available
URL: <https://stat.ethz.ch/pipermail/r-sig-mac/attachments/20091130/9b01647b/attachment-0001.bin>
More information about the R-SIG-Mac
mailing list