Re: DBI and DBD::Oracle throw error Had to create DBD::Oracle::dr::imp_data_size unexpectedly
- From: scoles@xxxxxxxxxxx (John Scoles)
- Date: Wed, 10 Oct 2007 07:27:40 -0400
Looks like the 64 bit perl vs 32 bit .pms issuesthat is croping up more and
more.
So I would go back one more step at remove all the DBI and get the source
and recompile and insall. the DBD::Oracle again.
What you might want to try is
Not sure what the cure for this is??
""Peter McLarty"" <p.mclarty@xxxxxxxxxx> wrote in message
news:27AA2E9CA7A0C44283BC1E9B00086AA9084E17A7@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Hello,
Well I have had to wait for the sysadmins to do this, but we have done
as you recommended and removed all the dbd and then tried doing a make
on the system of the dbd to build a new one.
It has errors relating to the same problem, but we pressed on and
installed anyway
Here is a trace, from an attempt to connect
perl -MDBI -e 'DBI->trace(4); DBI->connect("dbi:Oracle:CS89PROD",
"/","",{ora_session_mode => 2, RaiseError => 1});'
DBI 1.40-ithread dispatch trace level set to 4 (in pid 18625)
Note: perl is running without the recommended perl -w option
-> DBI->connect(dbi:Oracle:CS89PROD, /, ****, HASH(0x505290))
-> DBI->install_driver(Oracle) for linux perl=5.008005 pid=18625
ruid=500 euid=500
install_driver: DBD::Oracle version 1.19 loaded from
/usr/lib64/perl5/site_perl/5.8.5/x86_64-linux-thread-multi/DBD/Oracle.pm
New DBI::dr (for DBD::Oracle::dr, parent=, id=)
dbih_setup_handle(DBI::dr=HASH(0x698190)=>DBI::dr=HASH(0x7809e0),
DBD::Oracle::dr, 0, Null!)
Had to create DBD::Oracle::dr::imp_data_size unexpectedly at
/usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/DBI.pm line
1063.
dbih_make_com(Null!, 0, DBD::Oracle::dr, 196, 0) thr#504010
-> STORE in DBD::_::common for DBD::Oracle::dr
(DBI::dr=HASH(0x698190)~0x7809e0 'ShowErrorStatement' 1) thr#504010
STORE DBI::dr=HASH(0x7809e0) 'ShowErrorStatement' => 1
<- STORE= 1 at Oracle.pm line 61
<- install_driver= DBI::dr=HASH(0x698190)
-> connect for DBD::Oracle::dr (DBI::dr=HASH(0x698190)~0x7809e0
'CS89PROD' '/' **** HASH(0x784020)) thr#504010
New DBI::db (for DBD::Oracle::db, parent=DBI::dr=HASH(0x7809e0),
id=)
dbih_setup_handle(DBI::db=HASH(0x7809a0)=>DBI::db=HASH(0x784000),
DBD::Oracle::db, 694c30, Null!)
Had to create DBD::Oracle::db::imp_data_size unexpectedly at
/usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/DBI.pm line
1063.
dbih_make_com(DBI::dr=HASH(0x7809e0), 775970, DBD::Oracle::db, 196,
0) thr#504010
Undefined subroutine &DBD::Oracle::db::_login called at
/usr/lib64/perl5/site_perl/5.8.5/x86_64-linux-thread-multi/DBD/Oracle.pm
line 222.
<> DESTROY ignored for outer handle DBI::db=HASH(0x7809a0) (inner
DBI::db=HASH(0x784000))
-> DESTROY for DBD::Oracle::db (DBI::db=HASH(0x784000)~INNER)
thr#504010
<- DESTROY= (not implemented)
dbih_clearcom 0x7809a0 (com 0x784f90, type 2) done.
-- DBI::END
-> disconnect_all for DBD::Oracle::dr
(DBI::dr=HASH(0x698190)~0x7809e0) thr#504010
<- disconnect_all= (not implemented) at DBI.pm line 659 via -e line
0
! -> DESTROY for DBD::Oracle::dr (DBI::dr=HASH(0x7809e0)~INNER)
thr#504010
! <- DESTROY= (not implemented) during global destruction
dbih_clearcom 0x698190 (com 0x775970, type 1) done.
! <> DESTROY for DBI::dr=HASH(0x698190) ignored (inner handle gone)
This was run as oracle the user so it owns the oracle libraries.it needs
to use.
Interestingly the ORACLE_HOME that the database we are trying to connect
to appears to have 32 bit Perl installed and the same one liner runs
fine in it
If you can point me as to how we get down to finding the files,
permissions that cause the error it would be appreciated
Cheers
Peter
-----Original Message-----
From: Tim Bunce [mailto:Tim.Bunce@xxxxxxxxx]
Sent: Friday, 5 October 2007 06:46 PM
To: Martin Evans
Cc: dbi-users@xxxxxxxx
Subject: Re: DBI and DBD::Oracle throw error Had to create
DBD::Oracle::dr::imp_data_size unexpectedly
On Fri, Oct 05, 2007 at 09:07:48AM +0100, Martin Evans wrote:
Peter McLarty wrote:
Hi
Running some redhat servers and created some scripts that use DBI and
DBD::Oracle to access our 10.2.0.3 databases.
The script was built and tested and has been used successfully on
dual core 64bit Xeon CPU servers and with as best as we can tell an
identical installation on some new quad core servers the script fails
here:with the above error.
We have tried a later version of DBI we were using the 1.40 version
installed as a RPM and have installed 1.59 using perl and make.
DBD::Oracle is 1.19
I have some strace output from where it fails running a simple piece
of code that simply connects the the system as / and runs select *
from dual as well as then would do a couple of log switches
It may be easier to diagnose with a DBI trace instead of an strace
(see DBI_TRACE in DBI pod). In particular what are the full errors
write(2, "Had to create DBD::Oracle::dr::i"..., 140) = 140 write(2,
"Use of uninitialized value in su"..., 129) = 129
brk(0x925000) = 0x925000
write(2, "Had to create DBD::Oracle::db::i"..., 140) = 140 write(2,
"Use of uninitialized value in su"..., 129) = 129 write(2, "Undefined
subroutine &DBD::Oracl"..., 139) = 139
The problem will be some kind of mismatch between the Oracle.pm and
Oracle.so (.sl / .whatever extension your shared libraries have).
I suggest you carefully find and remove all traces of DBD::Oracle and
reinstall it. (Mainly delete all files under all perl @INC dirs that
match DBD/Oracle.*)
If you still have problems after that then post a one liner that
demonstrates the problem:
perl -MDBI -e 'DBI->connect("...", ...)'
and we'll talk you through getting more info to diagnose the problem.
Tim.
.
- References:
- DBI and DBD::Oracle throw error Had to create DBD::Oracle::dr::imp_data_size unexpectedly
- From: Peter McLarty
- Re: DBI and DBD::Oracle throw error Had to create DBD::Oracle::dr::imp_data_size unexpectedly
- From: Martin Evans
- Re: DBI and DBD::Oracle throw error Had to create DBD::Oracle::dr::imp_data_size unexpectedly
- From: Tim Bunce
- RE: DBI and DBD::Oracle throw error Had to create DBD::Oracle::dr::imp_data_size unexpectedly
- From: Peter McLarty
- DBI and DBD::Oracle throw error Had to create DBD::Oracle::dr::imp_data_size unexpectedly
- Prev by Date: Repost from CPAN DBD::ORacle forum
- Next by Date: Re: Repost from CPAN DBD::ORacle forum
- Previous by thread: RE: DBI and DBD::Oracle throw error Had to create DBD::Oracle::dr::imp_data_size unexpectedly
- Next by thread: Please do me a favour.
- Index(es):
Relevant Pages
|
|