Ask a Question related to PERL Modules, Design and Development.
-
Stephan Titard #1
DBD::Oracle and various oracle clients
I would like to be able to use various DBD::Oracle drivers
one using the client library for oracle 8.1.7.x
and another using the client library for oracle 9.2.x
one (ugly) way would be to build twice DBD::Oracle and then
sistematically change one of the tree to have (say) DBD::Oracle8...
another way would be to subclass in a smart way...
is this doable? anybody maintaining various DBI/Oracle combinations that
could give insight
thanks
--stephan
Stephan Titard Guest
-
[Macromedia][Oracle JDBC Driver][Oracle]ORA-01000:maximum open cursors exceeded
Here is the technote from Macromedia regarding this issue: http://www.macromedia.com/go/tn_17660 Hope this helps! -
#13053 [Com]: oci8 error, this kill oracle-prosseces in the oracle-instance.
ID: 13053 Comment by: gid at gifpaste dot net Reported By: jsun at basefarm dot no Status: Bogus Bug Type: ... -
#24950 [Bgs]: Compiling PHP --with-oci8 --with oracle (Oracle 9i) fails
ID: 24950 User updated by: fschulze at more-radio dot de Reported By: fschulze at more-radio dot de Status: Bogus... -
#24950 [Com]: Compiling PHP --with-oci8 --with oracle (Oracle 9i) fails
ID: 24950 Comment by: cunha17 at uol dot com dot br Reported By: fschulze at more-radio dot de Status: Feedback... -
New 'Oracle Express / Oracle 9i OLAP' White Paper Available For Download
Plus Consultancy (http://www.plusconsultancy.co.uk) recently presented a white paper entitled "Express Evolution - What Oracle 9i OLAP Offers The... -
Achim Grolms #2
Re: DBD::Oracle and various oracle clients
Stephan Titard <sgt19@tid.es> wrote:
Why?> I would like to be able to use various DBD::Oracle drivers
> one using the client library for oracle 8.1.7.x
> and another using the client library for oracle 9.2.x
Achim Grolms Guest
-
Sherm Pendley #3
Re: DBD::Oracle and various oracle clients
Stephan Titard <sgt19@tid.es> writes:
Easy - just use the PREFIX or LIB options to "perl Makefile.PL" to install> I would like to be able to use various DBD::Oracle drivers
> one using the client library for oracle 8.1.7.x
> and another using the client library for oracle 9.2.x
them in different locations. Then "use lib" in your script to add one or
the other location to Perl's module search path.
Have a look at "perldoc perlmodinstall" for details.
sherm--
--
Web Hosting by West Virginians, for West Virginians: [url]http://wv-www.net[/url]
Cocoa programming in Perl: [url]http://camelbones.sourceforge.net[/url]
Sherm Pendley Guest
-
Stephan Titard #4
Re: DBD::Oracle and various oracle clients
Achim Grolms escribió:
the same perl tree is used to access different versions of oracle.> Stephan Titard <sgt19@tid.es> wrote:>>> I would like to be able to use various DBD::Oracle drivers
>> one using the client library for oracle 8.1.7.x
>> and another using the client library for oracle 9.2.x
> Why?
sherm's idea in this thread is to have DBD::Oracle and for example
DBDOracle8::DBD::Oracle tweaking PREFIX (or DBD::Oracle8::DBD::Oracle)
thanks
--stephan
Stephan Titard Guest
-
Stephan Titard #5
Re: DBD::Oracle and various oracle clients
Sherm Pendley escribió:
Yes, but this implies having e.g DBDOracle8::DBD::Oracle or even> Stephan Titard <sgt19@tid.es> writes:
>>>> I would like to be able to use various DBD::Oracle drivers
>> one using the client library for oracle 8.1.7.x
>> and another using the client library for oracle 9.2.x
> Easy - just use the PREFIX or LIB options to "perl Makefile.PL" to install
> them in different locations. Then "use lib" in your script to add one or
> the other location to Perl's module search path.
>
> Have a look at "perldoc perlmodinstall" for details.
>
> sherm--
>
DBD::Oracle8::DBD::Oracle, a bit ugly...
it has implications with respect to the automatic discovery of drivers
by DBI (dbi:Oracle:host -> dbi:Oracle8174:host etc...)
I would have liked DBD::OracleXXX
maybe I could make DBD::Oracle8 a proxy for DBDOracle8::DBD::Oracle
I have to look into that (maybe use some of the tricks of the 'aliased'
module)
almost seems safer to transform the code.
thanks
--stephan
Stephan Titard Guest
-
Stephan Titard #6
Re: DBD::Oracle and various oracle clients
actually this is a generic question how to have A::B install as A1::B1> Yes, but this implies having e.g DBDOracle8::DBD::Oracle or even
> DBD::Oracle8::DBD::Oracle, a bit ugly...
> it has implications with respect to the automatic discovery of drivers
> by DBI (dbi:Oracle:host -> dbi:Oracle8174:host etc...)
>
> I would have liked DBD::OracleXXX
> maybe I could make DBD::Oracle8 a proxy for DBDOracle8::DBD::Oracle
> I have to look into that (maybe use some of the tricks of the 'aliased'
> module)
> almost seems safer to transform the code.
>
> thanks
> --stephan
(not <PREFIX>A::B)
or make A::B completely equivalent to MY::A::B (this must work for
procedural o OO interface)
hth
--stephan
Stephan Titard Guest
-
Achim Grolms #7
Re: DBD::Oracle and various oracle clients
Stephan Titard <sgt19@tid.es> wrote:
Sure. But why?> Achim Grolms escribió:> the same perl tree is used to access different versions of oracle.>> Stephan Titard <sgt19@tid.es> wrote:>>>>> I would like to be able to use various DBD::Oracle drivers
>>> one using the client library for oracle 8.1.7.x
>>> and another using the client library for oracle 9.2.x
>> Why?
One idea is to install DBD::Oracle to different PREFIX locations
and use PERL5LIB, ORACLE_HOME and LD_LIBRARY_PATH
to configure the correct locations of Perllibs and
Oracle-code.
Achim Grolms Guest
-
Sherm Pendley #8
Re: DBD::Oracle and various oracle clients
Stephan Titard <sgt19@tid.es> writes:
No, it doesn't.> Sherm Pendley escribió:> Yes, but this implies having e.g DBDOracle8::DBD::Oracle or even>> Stephan Titard <sgt19@tid.es> writes:
>>>>>>> I would like to be able to use various DBD::Oracle drivers
>>> one using the client library for oracle 8.1.7.x
>>> and another using the client library for oracle 9.2.x
>> Easy - just use the PREFIX or LIB options to "perl Makefile.PL" to install
>> them in different locations. Then "use lib" in your script to add one or
>> the other location to Perl's module search path.
>>
>> Have a look at "perldoc perlmodinstall" for details.
>>
>> sherm--
>>
> DBD::Oracle8::DBD::Oracle
No, it doesn't.> it has implications with respect to the automatic discovery of drivers
> by DBI (dbi:Oracle:host -> dbi:Oracle8174:host etc...)
Please - read "perldoc perlmodinstall" to see what PREFIX and LIB *really*
do before making further incorrect assumptions.
sherm--
--
Web Hosting by West Virginians, for West Virginians: [url]http://wv-www.net[/url]
Cocoa programming in Perl: [url]http://camelbones.sourceforge.net[/url]
Sherm Pendley Guest
-
Stephan Titard #9
Re: DBD::Oracle and various oracle clients
Sherm, I just re-read the perlmodinstall to see if I missed something> Please - read "perldoc perlmodinstall" to see what PREFIX and LIB *really*
> do before making further incorrect assumptions.
>
> sherm--
>
obvious (after all these years) , but you just lost me...
PREFIX, LIB and use lib permit to have various directories acting as one
single hierarchy where to find modules, i.e module A::B is
<unique_root>/A/B.pm etc
(they deal with the mechanics of installing, not the dynamics of using)
where is the second DBD::Oracle rooted?
how do I 'use' both at the same time?
maybe my original question was poorly phrased...sorry
of course I can encapsulate in various .pm
use lib /where/is/oracleXXX;
use DBD::Oracle;
but it is not what I was asking for.
thanks
--stephan
Stephan Titard Guest
-
Achim Grolms #10
Re: DBD::Oracle and various oracle clients
Stephan Titard <sgt19@tid.es> wrote:
What means "at the same time"?>>>> Please - read "perldoc perlmodinstall" to see what PREFIX and LIB *really*
>> do before making further incorrect assumptions.
>>
>> sherm--
>>
> Sherm, I just re-read the perlmodinstall to see if I missed something
> obvious (after all these years) , but you just lost me...
> PREFIX, LIB and use lib permit to have various directories acting as one
> single hierarchy where to find modules, i.e module A::B is
> <unique_root>/A/B.pm etc
> (they deal with the mechanics of installing, not the dynamics of using)
>
> where is the second DBD::Oracle rooted?
> how do I 'use' both at the same time?
In the same process?
Achim Grolms Guest
-
Stephan Titard #11
Re: DBD::Oracle and various oracle clients
Achim Grolms escribió:
Well I try always to minimize the use of env. vars, especially> Stephan Titard <sgt19@tid.es> wrote:>>> Achim Grolms escribió:>> the same perl tree is used to access different versions of oracle.>>> Stephan Titard <sgt19@tid.es> wrote:
>>>> I would like to be able to use various DBD::Oracle drivers
>>>> one using the client library for oracle 8.1.7.x
>>>> and another using the client library for oracle 9.2.x
>>> Why?
> Sure. But why?
>
> One idea is to install DBD::Oracle to different PREFIX locations
> and use PERL5LIB, ORACLE_HOME and LD_LIBRARY_PATH
> to configure the correct locations of Perllibs and
> Oracle-code.
SHLIB_PATH, LD_LIBRARY_PATH and the such.
On HP-UX (11.0 32bit) I build a distribution with about 350 modules where
all external shared objects are found (modulo one symlink) directly
inside the perl tree
so that it is ready for tar and independent. In the case of a (perl)
built shared library
with external dependency (like DBD/oracle.sl) I create a link to the
external library inside my perl-tree that I use for the install of the
perl module. finally an external OS-dependent command is used to turn
off the use of SHLIB_PATH and the such.
why? "principle of least surprise, probably and KISS too"
I use a couple ugly tricks like to relocate a fresh build
to another place: I build normally for /opt/perl58X (core + modules)
and I "generate" for /var/tmp/p*/perl58X (the core part is actually
installed normally using PREFIX). In all the *sl I reserved enough room
in the shared object header using ///////external/shared/object
which I subsistute directly in the binary.
Does not work yet for solaris, but is mainly ok on cygwin.
hth
--stephan
Stephan Titard Guest
-
Stephan Titard #12
Re: DBD::Oracle and various oracle clients
Achim Grolms escribió:
Yes. sloppy wording again:> Stephan Titard <sgt19@tid.es> wrote:>>> Sherm, I just re-read the perlmodinstall to see if I missed something>>> Please - read "perldoc perlmodinstall" to see what PREFIX and LIB *really*
>>> do before making further incorrect assumptions.
>>>
>>> sherm--
>>>
>> obvious (after all these years) , but you just lost me...
>> PREFIX, LIB and use lib permit to have various directories acting as one
>> single hierarchy where to find modules, i.e module A::B is
>> <unique_root>/A/B.pm etc
>> (they deal with the mechanics of installing, not the dynamics of using)
>>
>> where is the second DBD::Oracle rooted?
>> how do I 'use' both at the same time?
> What means "at the same time"?
> In the same process?
I meant in the same perl file one use behind the other like in
use DBD::Oracle;
use DBD:Whatever;
Stephan Titard Guest
-
Stephan Titard #13
Re: DBD::Oracle and various oracle clients
actually, Nicholas Clark has been doing lately work on the relocation> On HP-UX (11.0 32bit) I build a distribution with about 350 modules where
> all external shared objects are found (modulo one symlink) directly
> inside the perl tree
> so that it is ready for tar and independent. In the case of a (perl)
> built shared library
> with external dependency (like DBD/oracle.sl) I create a link to the
> external library inside my perl-tree that I use for the install of the
> perl module. finally an external OS-dependent command is used to turn
> off the use of SHLIB_PATH and the such.
>
> why? "principle of least surprise, probably and KISS too"
>
problem
of a core distribution (see p5p about 2 months ago)
it is not easy and the double dependency problem is not handled
completely (as far as I can tell for HP-UX and external modules)
Stephan Titard Guest



Reply With Quote

