-----Original Message----- From: Chang, Mei Sent: Friday, October 24, 2003 10:46 AM To: '[EMAIL PROTECTED]' Subject: RE: DBI.pm DBD::Oracle::db
Tim, I turned the trace level to 9, and it provided me a lot more detailed information. I need your further help. My pc has an an Oracle client installed (with ORACLE_HOME, ORACLE_SID in registry and in the environment variables, but the server B does not have oracle client installed. Is this correct interpretation for the trace? If this is correct, why the DBD:Oracle use my local environmental variables? I thought the oracle module would make a direct connection to hostname:port, and the Oracle process sitting on the target host would provide the path of tnsname.ora and take care of everything. Is there a way that I can force my code to use oracle server's ORACLE_HOME and ORACLE_ID? Thanks Mei -----Original Message----- From: Tim Bunce [mailto:[EMAIL PROTECTED] Sent: Friday, October 24, 2003 4:43 AM To: Chang, Mei Cc: '[EMAIL PROTECTED]' Subject: Re: DBI.pm DBD::Oracle::db No idea. Try a higher trace level (eg 9). Tim. On Thu, Oct 23, 2003 at 03:23:10PM -0600, Chang, Mei wrote: > Users, > > I wrote a perl script and compiled it by perl2exe. I placed the exe file to > different machines, the results were different: > > Procedures: > > 1. ran from my pc, it worked fine (my PC is Win2K) - My pc has DBI module > and perl 5.6 installed > 2. placed the executable on server A (Win NT)and ran on it, it worked fine. > - This server happened to have perl 5.0.1 and oracle client installed. > 3. placed on Server B (W2k) and ran on it, it failed on db-connect (please > see the attached trace file) > 4. Mapped to server B's drive with the executable there, and ran it from my > pc, and it worked. > 5. Logged onto server B, and ran the executable on Server B again, it still > failed with the same error. > > The only problem seemed to be on the server B. but looking I could not > figure out what's wrong? > (Note: The dsn, sid, db name, user id, password are all the same. ) > > With the executable, I should not need the perl.exe on server B, and > with DBI and DBD, I should not need Oracle client. What did I miss? > > Thanks in advance. > > M. Chang > > > The two trace files were from server B . > > procedure #3's results > <<trace.notworking.txt>> > > procedures #4 results > <<trace.working.txt>> > > > > ************************************************************** > This message, including any attachments, contains confidential information intended for a specific individual and purpose, and is protected by law. If you are not the intended recipient, please contact sender immediately by reply e-mail and destroy all copies. You are hereby notified that any disclosure, copying, or distribution of this message, or the taking of any action based on it, is strictly prohibited. > TIAA-CREF > ************************************************************** > > NOT WORKING > > > > DBI 1.37-ithread dispatch trace level set to 4 > Note: perl is running without the recommended perl -w option > -> DBI->connect(dbi:Oracle:db1;host=prodsys;sid=db1, tec, ****, HASH(0x8b7f0e4)) > -> DBI->install_driver(Oracle) for MSWin32 perl=5.006001 pid=2272 ruid=0 euid=0 > install_driver: DBD::Oracle version 1.06 loaded from PERL2EXE_STORAGE/DBD/Oracle.pm > New DBI::dr (for DBD::Oracle::dr, parent=, id=) > dbih_setup_handle(DBI::dr=HASH(0x8dfceb8)=>DBI::dr=HASH(0x8d83564), DBD::Oracle::dr, 0, Null!) > dbih_make_com(Null!, 00000000, DBD::Oracle::dr, 84, 00000000) thr#08B7F374 > <- install_driver= DBI::dr=HASH(0x8dfceb8) > -> connect for DBD::Oracle::dr (DBI::dr=HASH(0x8dfceb8)~0x8d83564 'db1;host=prodsys;sid=db1' 'tec' **** HASH(0x8d8387c)) thr#08B7F374 > 1 -> debug in DBD::_::common for DBD::Oracle::dr (DBI::dr=HASH(0x8d83564)~INNER) thr#08B7F374 > 1 <- debug= 4 at Oracle.pm line 90 via d:\Utils\App\time_to_close.exe line 60 > New DBI::db (for DBD::Oracle::db, parent=DBI::dr=HASH(0x8d83564), id=) > dbih_setup_handle(DBI::db=HASH(0x8d83534)=>DBI::db=HASH(0x8d82930), DBD::Oracle::db, 8dfcc0c, Null!) > dbih_make_com(DBI::dr=HASH(0x8d83564), 08D831E8, DBD::Oracle::db, 676, 00000000) thr#08B7F374 > > **************************************************************************** ************************* > <- connect= undef at DBI.pm line 582 via d:\Utils\App\time_to_close.exe > line 60 > -> errstr in DBD::_::common for DBD::Oracle::dr (DBI::dr=HASH(0x8dfceb8)~0x8d83564) thr#08B7F374 > <- errstr= undef at DBI.pm line 584 via d:\Utils\App\time_to_close.exe line 60 > DBI connect('db1;host=prodsys;sid=db1','tec',...) failed: > > **************************************************************************** ******************* > <> DESTROY ignored for outer handle DBI::db=HASH(0x8d83534) (inner DBI::db=HASH(0x8d82930)) > -> DESTROY for DBD::Oracle::db (DBI::db=HASH(0x8d82930)~INNER) thr#08B7F374 > DESTROY for DBI::db=HASH(0x8d82930) ignored - handle not initialised > <- DESTROY= undef > dbih_clearcom 0x8d83534 (com 0x8efae50, type 2) done. > > -- DBI::END > -> disconnect_all for DBD::Oracle::dr (DBI::dr=HASH(0x8dfceb8)~0x8d83564) thr#08B7F374 > <- disconnect_all= '' at DBI.pm line 649 via d:\Utils\App\time_to_close.exe line 0 > ! -> DESTROY for DBD::Oracle::dr (DBI::dr=HASH(0x8d83564)~INNER) thr#08B7F374 > ! <- DESTROY= (not implemented) during global destruction > dbih_clearcom 0x8dfceb8 (com 0x8d831e8, type 1) done. > > ! <> DESTROY for DBI::dr=HASH(0x8dfceb8) ignored (inner handle gone) > WORKIGN > > > > DBI 1.37-ithread dispatch trace level set to 4 > Note: perl is running without the recommended perl -w option > -> DBI->connect(dbi:Oracle:db1;host=prodsys;sid=db1, tec, ****, HASH(0x8b7ee44)) > -> DBI->install_driver(Oracle) for MSWin32 perl=5.006001 pid=1996 ruid=0 euid=0 > install_driver: DBD::Oracle version 1.06 loaded from PERL2EXE_STORAGE/DBD/Oracle.pm > New DBI::dr (for DBD::Oracle::dr, parent=, id=) > dbih_setup_handle(DBI::dr=HASH(0x8dfcb1c)=>DBI::dr=HASH(0x8d872fc), DBD::Oracle::dr, 0, Null!) > dbih_make_com(Null!, 00000000, DBD::Oracle::dr, 84, 00000000) thr#08B7F0D4 > <- install_driver= DBI::dr=HASH(0x8dfcb1c) > -> connect for DBD::Oracle::dr (DBI::dr=HASH(0x8dfcb1c)~0x8d872fc 'db1;host=prodsys;sid=db1' 'tec' **** HASH(0x8d838c0)) thr#08B7F0D4 > 1 -> debug in DBD::_::common for DBD::Oracle::dr (DBI::dr=HASH(0x8d872fc)~INNER) thr#08B7F0D4 > 1 <- debug= 4 at Oracle.pm line 90 via Y:\Utils\App\time_to_close.exe line 60 > New DBI::db (for DBD::Oracle::db, parent=DBI::dr=HASH(0x8d872fc), id=) > dbih_setup_handle(DBI::db=HASH(0x8d872cc)=>DBI::db=HASH(0x8d8395c), DBD::Oracle::db, 8dfff88, Null!) > dbih_make_com(DBI::dr=HASH(0x8d872fc), 08D83F6C, DBD::Oracle::db, 676, 00000000) thr#08B7F0D4 > > **************************************************************************** ********************************* > <- connect= DBI::db=HASH(0x8d872cc) at DBI.pm line 582 via Y:\Utils\App\time_to_close.exe > line 60 > -> STORE for DBD::Oracle::db (DBI::db=HASH(0x8d8395c)~INNER 'RaiseError' 1) thr#08B7F0D4 > STORE DBI::db=HASH(0x8d8395c) 'RaiseError' => 1 > <- STORE= 1 at DBI.pm line 622 via Y:\Utils\App\time_to_close.exe line 60 > -> STORE for DBD::Oracle::db (DBI::db=HASH(0x8d8395c)~INNER 'PrintError' 1) thr#08B7F0D4 > STORE DBI::db=HASH(0x8d8395c) 'PrintError' => 1 > <- STORE= 1 at DBI.pm line 622 via Y:\Utils\App\time_to_close.exe line 60 > -> STORE for DBD::Oracle::db (DBI::db=HASH(0x8d8395c)~INNER 'AutoCommit' 1) thr#08B7F0D4 > <- STORE= 1 at DBI.pm line 622 via Y:\Utils\App\time_to_close.exe line 60 > -> STORE for DBD::Oracle::db (DBI::db=HASH(0x8d8395c)~INNER 'Username' 'tec') thr#08B7F0D4 > STORE DBI::db=HASH(0x8d8395c) 'Username' => 'tec' > <- STORE= 1 at DBI.pm line 625 via Y:\Utils\App\time_to_close.exe line 60 > <- connect= DBI::db=HASH(0x8d872cc) > -> STORE for DBD::Oracle::db (DBI::db=HASH(0x8d8395c)~INNER 'dbi_connect_closure' CODE(0x8d87230)) thr#08B7F0D4 > STORE DBI::db=HASH(0x8d8395c) 'dbi_connect_closure' => CODE(0x8d87230) > <- STORE= 1 at DBI.pm line 639 via Y:\Utils\App\time_to_close.exe line 125 > > **************************************************************************** **************************** > -> prepare for DBD::Oracle::db (DBI::db=HASH(0x8d872cc)~0x8d8395c 'select count(1) AS COUNT from tec_t_evt_rep WHERE (date_reception < 1066851158) and > (status <> 30)') thr#08B7F0D4 > New DBI::st (for DBD::Oracle::st, parent=DBI::db=HASH(0x8d8395c), id=) > dbih_setup_handle(DBI::st=HASH(0x8fe5b18)=>DBI::st=HASH(0x8b7ef28), DBD::Oracle::st, 8fe5b30, Null!) > dbih_make_com(DBI::db=HASH(0x8d8395c), 08EFCF00, DBD::Oracle::st, 240, 00000000) thr#08B7F0D4 > dbd_st_prepare'd sql f4 > dbd_describe (for sql f4 after oci f54, lb 80, csr 0x8f165cc)... > fbh 1: 'COUNT' NULLable, otype 2-> 5, dbsize 22/40, p38.s0 > out: ftype 5, bufl 41. indp 0, rlen 0, rcode 0 > dbd_describe'd 1 columns (Row bytes: 22 max, 17 est avg. Cache: 309 rows) > <- prepare= DBI::st=HASH(0x8fe5b18) at time_to_close.exe line 65 via Y:\Utils\App\time_to_close.exe line 146 > -> execute for DBD::Oracle::st (DBI::st=HASH(0x8fe5b18)~0x8b7ef28) thr#08B7F0D4 > dbd_st_execute (for sql f4 after oci f8, out0)... > dbd_st_execute complete (rc1403, w00, rpc1, eod1403, out0) > <- execute= 1 at time_to_close.exe line 69 via Y:\Utils\App\time_to_close.exe line 146 > -> fetchrow_array for DBD::Oracle::st (DBI::st=HASH(0x8fe5b18)~0x8b7ef28) thr#08B7F0D4 > dbih_setup_fbav for 1 fields => 0x8b7ef10 > dbd_st_fetch 1 fields, rpc 1 (cache: 0/1/309) > <- fetchrow_array= '1' row1 at time_to_close.exe line 75 via Y:\Utils\App\time_to_close.exe line 146 > -> do in DBD::_::db for DBD::Oracle::db (DBI::db=HASH(0x8d872cc)~0x8d8395c 'UPDATE tec_t_evt_rep SET status = 30, administrator = 'DailyClosed', last_modified_time = sysdate > WHERE (date_reception < 1066851158) and > (status <> 30)') thr#08B7F0D4 > 1 -> prepare for DBD::Oracle::db (DBI::db=HASH(0x8d8395c)~INNER 'UPDATE tec_t_evt_rep SET status = 30, administrator = 'DailyClosed', last_modified_time = sysdate > WHERE (date_reception < 1066851158) and > (status <> 30)' undef) thr#08B7F0D4 > New DBI::st (for DBD::Oracle::st, parent=DBI::db=HASH(0x8d8395c), id=) > dbih_setup_handle(DBI::st=HASH(0x8b7515c)=>DBI::st=HASH(0x9020060), DBD::Oracle::st, 8d83890, Null!) > dbih_make_com(DBI::db=HASH(0x8d8395c), 08EFCF00, DBD::Oracle::st, 240, 00000000) thr#08B7F0D4 > dbd_st_prepare'd sql f5 > dbd_describe skipped for non-select (sql f5, lb 80, csr 0x8f1b5d8) > 1 <- prepare= DBI::st=HASH(0x8b7515c) at DBI.pm line 1345 via Y:\Utils\App\time_to_close.exe line 92 > -> execute for DBD::Oracle::st (DBI::st=HASH(0x8b7515c)~0x9020060) thr#08B7F0D4 > dbd_st_execute (for sql f5 after oci f54, out0)... > dbd_st_execute complete (rc0, w00, rpc1, eod0, out0) > <- execute= 1 at DBI.pm line 1346 via Y:\Utils\App\time_to_close.exe line 92 > -> rows for DBD::Oracle::st (DBI::st=HASH(0x8b7515c)~0x9020060) thr#08B7F0D4 > <- rows= 1 at DBI.pm line 1347 via Y:\Utils\App\time_to_close.exe line 92 > <- do= 1 at time_to_close.exe line 92 via Y:\Utils\App\time_to_close.exe line 146 > <> DESTROY ignored for outer handle DBI::st=HASH(0x8b7515c) (inner DBI::st=HASH(0x9020060)) > -> DESTROY for DBD::Oracle::st (DBI::st=HASH(0x9020060)~INNER) thr#08B7F0D4 > <- DESTROY= undef at time_to_close.exe line 93 > dbih_clearcom 0x8b7515c (com 0x8f1b568, type 3) done. > > -> finish for DBD::Oracle::st (DBI::st=HASH(0x8fe5b18)~0x8b7ef28) thr#08B7F0D4 > <- finish= 1 at time_to_close.exe line 97 via Y:\Utils\App\time_to_close.exe line 146 > -> disconnect for DBD::Oracle::db (DBI::db=HASH(0x8d872cc)~0x8d8395c) thr#08B7F0D4 > <- disconnect= 1 at time_to_close.exe line 102 via Y:\Utils\App\time_to_close.exe line 146 > <> DESTROY ignored for outer handle DBI::db=HASH(0x8d872cc) (inner DBI::db=HASH(0x8d8395c)) > <> DESTROY ignored for outer handle DBI::st=HASH(0x8fe5b18) (inner DBI::st=HASH(0x8b7ef28)) > -> DESTROY for DBD::Oracle::st (DBI::st=HASH(0x8b7ef28)~INNER) thr#08B7F0D4 > <- DESTROY= undef at time_to_close.exe line 147 > dbih_clearcom 0x8fe5b18 (com 0x8f1655c, type 3) done. > > -> DESTROY for DBD::Oracle::db (DBI::db=HASH(0x8d8395c)~INNER) thr#08B7F0D4 > <- DESTROY= undef at time_to_close.exe line 147 > dbih_clearcom 0x8d872cc (com 0x8efcf00, type 2) done. > > -- DBI::END > -> disconnect_all for DBD::Oracle::dr (DBI::dr=HASH(0x8dfcb1c)~0x8d872fc) thr#08B7F0D4 > <- disconnect_all= '' at DBI.pm line 649 via Y:\Utils\App\time_to_close.exe line 0 > ! -> DESTROY for DBD::Oracle::dr (DBI::dr=HASH(0x8d872fc)~INNER) thr#08B7F0D4 > ! <- DESTROY= (not implemented) during global destruction > dbih_clearcom 0x8dfcb1c (com 0x8d83f6c, type 1) done. > > ! <> DESTROY for DBI::dr=HASH(0x8dfcb1c) ignored (inner handle gone) ************************************************************** This message, including any attachments, contains confidential information intended for a specific individual and purpose, and is protected by law. If you are not the intended recipient, please contact sender immediately by reply e-mail and destroy all copies. You are hereby notified that any disclosure, copying, or distribution of this message, or the taking of any action based on it, is strictly prohibited. TIAA-CREF **************************************************************
trace.working.102403
Description: Binary data
trace.notworking.102403
Description: Binary data