Dear R-users,
here is an error that you might encounter when using ROracle.
> library(ROracle)
Loading required package: DBI> con <- dbConnect(dbDriver("Oracle"),
"mkienzle/******@tabs")
> dbListTables(con)
********** Internal heap ERROR 17177 addr=0x0 *********
******************************************************
HEAP DUMP heap name="Alloc statemen" desc=0x9163cc4
....
etc...
....
Segmentation fault
People have been reporting such an error when different version of the
Oracle client and server are used
(http://homepage.internet.lu/dbacomp/html/9i.html). David James
suggests compiling ROracle using ProC/C++ argument PREFETCH=0.
To do so and fix this problem, you have to re-install ROracle using a
modified Makefile.in file. Below is a description of how to do so under
Linux.
(1) REMOVE the currently installed ROracle package
(2) un-pack ROracle-<version>.tar.gz
(3) modify ROracle/src/Makefile.in by adding the PREFETCH=0
argument to the ProC/C++ command
----original version----
RS-Oracle.c: RS-Oracle.h RS-Oracle.pc
$(PROC) CODE=$(CODE) MODE=$(MODE) INCLUDE=$(RHOME)/include \
PARSE=$(PARSE) LINES=$(LINES) RS-Oracle.pc
----modified version----
RS-Oracle.c: RS-Oracle.h RS-Oracle.pc
$(PROC) CODE=$(CODE) MODE=$(MODE) INCLUDE=$(RHOME)/include \
PARSE=$(PARSE) LINES=$(LINES) PREFETCH=0 RS-Oracle.pc
(4) INSTALL the "modified" ROracle package
cheers,
marco