> oracle instant client 11.1 I wonder if they have changed how 11.1 works?? wil have to look at that
what was the ORacle version working with 1.16? > But it seems to work now using the 'ora_envhp => 0' attribute. Is there > some > penalty performance when using this option ? > Not in terms of speed it does use a little more resources so it is not something you want to use on a mass scale say on a large web server or alike. > On Thu, Feb 19, 2009 at 1:56 PM, <sco...@pythian.com> wrote: > >> What is the version of the Oracle client you are using? >> >> There is a rather large gap between 1.16 and 1.22 on the way they >> connect >> especially with the older Oracle clients which could explain his >> >> cheers >> John Scoles >> >> > On Thu, Feb 19, 2009 at 12:33 PM, Martin Evans >> > <martin.ev...@easysoft.com>wrote: >> > >> >> Karl Forner wrote: >> >> >> >>> I'm experiencing a very strange problem : in short, I could not >> >>> reconnect >> >>> to a DB using DBI once I successfully connected then failed (with >> bad >> >>> password for example), IN THAT ORDER. >> >>> >> >>> I made a script reproducing the bug: >> >>> ================= >> >>> #!/usr/bin/env perl >> >>> use strict; >> >>> use warnings; >> >>> use DBI; >> >>> >> >>> my $dsn = 'dbi:Oracle:sid=TITI;host=xxx.yyy.zzz.com;port=1521'; >> >>> my $user = 'toto'; >> >>> my $password = $user; >> >>> my $options = { AutoCommit => 0 }; >> >>> my @goodinfo = ($dsn, $user, $password, $options); >> >>> my @badinfo = ($dsn, $user, '', $options); >> >>> >> >>> test(@goodinfo); >> >>> test(@badinfo); >> >>> test(@goodinfo); >> >>> test(@goodinfo); >> >>> >> >>> sub test { >> >>> my $dbh; >> >>> eval { $dbh = DBI->connect(@_) }; >> >>> warn "$...@\n" if $@; >> >>> print $dbh ? "Ok" : "NOK"; >> >>> print "\n"; >> >>> } >> >>> >> >>> ======== >> >>> >> >>> so I expect to get "OK NOK OK OK". >> >>> But on one computer I get "OK NOK NOK NOK", and on another I get the >> >>> expected stuff (using the same database) >> >>> >> >>> But if I do >> >>> test(@badinfo); >> >>> test(@goodinfo); >> >>> test(@goodinfo); >> >>> >> >>> I get "NOK OK OK" on both !!!!!!! >> >>> >> >>> Is this a bug ?? >> >>> >> >>> Thanks >> >>> Karl Forner >> >>> >> >>> P.S >> >>> >> >>> Here are the configs : >> >>> >> >>> working computer: >> >>> arch: ia64 >> >>> OS: Suse ES 9 >> >>> perl -v : v5.8.6 >> >>> DBI: 1.607 >> >>> DBD::Oracle: 1.16 >> >>> >> >>> buggy computer: >> >>> arch: i686 >> >>> OS : ubuntu 8.04 >> >>> perl -v : v5.8.8 >> >>> DBI: 1.601 >> >>> DBD::Oracle: 1.22 >> >>> >> >>> >> >> I think if you add add "ora_envhp => 0" to your options it will work. >> >> See the DBD::Oracle pod for an explanation. >> >> >> > >> > Indeed it works, thnak you. >> > I think this is something quite dangerous and difficult to solve, >> maybe >> it >> > should be a default or clearly explained in the synopsis. >> > Typical use case it testing a list of login/password. Here the >> connection >> > begins to fail as soon as there is a success followed by a failure, >> then >> > all >> > subsequent connections fail. >> > Moreover it does not happen with previous version of DBD::Oracle. >> > >> > Thanks again for the answer. >> > >> >> >> >