Re: [EXTERNAL] Re: DBI.pm - Memoryfault(coredump)
[email protected] (Srikantha) Mon, 30 Nov 2020 18:58:23 +0530
| Newsgroups | perl.dbi.users |
|---|---|
| Message-ID | <CAKKA04-wna7dZ3LBFNHYnJaxisXUfvzhewj7O16ZLSQgcinZ1w@mail.gmail.com> |
--000000000000ab61d705b552fcd2
Content-Type: text/plain; charset="UTF-8"
Please see below with more details; dbh declaration is of perl hash.
my %connection_hash = (); # keep open connections
$connection_hash{$dbname} = DBI->connect( $sid, $user, $pass,
{AutoCommit => $autocommit_flag}); for(keys %connection_hash){
lib_log::debug_msg("Connection hash of $_ is $connection_hash{$_}\n");
}
o/p with Dumper:
2020/11/06 06:32:53 DEBUG > Connection hash of ORAOD is DBI::db=HASH(0x43b3650)
2020/11/06 06:32:53 INFO > $VAR1 = {
'ORAOD' => bless( {}, 'DBI::db' )
};
2020/11/06 06:32:53 DEBUG > Connection established to ORAOD with autocommit = 0
Basically with this perl hash DB Handler, I am getting - Segmentation fault
(core dumped). This program was perfectly working fine until we upgraded
our Linux Server. So perl got upgraded from v5.10.1 to v5.16.3. Then
onwards we started getting core dump errors. I had to spend lots of time to
figure out which code is causing the core dump and then I am here. Then I
have changed the DB Handler without a hash like below and it works fine.
my $dbh = DBI->connect("dbi:$db_driver:$db", $user, $pass, { RaiseError =>
1, AutoCommit => 0 }) or die ("failed to login $db_user");
But for me the challenge is, there are other places where hash is referred
like below and I am trying to find a way how to commit and rollback my
Oracle DB code without hash program.
$connection_hash{$dbname}->commit();
$connection_hash{$dbname}->rollback();
*Regards*
*Srikantha*
*Mb-9980073640*
On Thu, Nov 26, 2020 at 10:41 PM Jared Still <[email protected]> wrote:
> These connection strings are not the same.
>
> There really is not much to say about them without code samples that
> include variable definitions.
>
>
>
> On Wed, Oct 28, 2020 at 13:06 Srikantha <[email protected]> wrote:
>
>> Hello Fennel & David,
>> Thanks a lot for your response. FInally I could sort out the segmentation
>> fault/Memory dump error after too many rounds of debugging.
>> Basically I can blame it on the Oracle connection but I may be wrong as
>> there are few minor changes(could be on connection_hash too) in the custom
>> perl module which we are using for Oracle connection. I am using the perl
>> module one which is using the 2nd method below and after that I am not
>> finding the Memory core dump error.
>>
>> $connection_hash{$dbname} = DBI->connect( $sid, $user, $pass, {AutoCommit
>> => $autocommit_flag}); -- Not working
>> my $dbh = DBI->connect("dbi:$db_driver:$db", $user, $pass, { RaiseError
>> => 1, AutoCommit => 1 }) or die ("failed to login $db_user"); -- Working
>>
>> *Regards*
>> *Srikantha*
>>
>>
>>
>> On Tue, Oct 27, 2020 at 2:52 AM Fennell, Brian <[email protected]>
>> wrote:
>>
>>> I think the following links should cover all the pieces needed for
>>> Perl/JDBC/Oracle
>>>
>>> https://www.oracle.com/database/technologies/appdev/jdbc.html
>>> https://metacpan.org/pod/distribution/DBD-JDBC/JDBC.pod
>>> https://sdkman.io/
>>> Perl can launch the java server using qx:
>>> https://perlmaven.com/qx
>>>
>>>
>>> This is possibly a tangent:
>>> The last time I dug into this I couldn't figure out how to build
>>> DBD::Oracle from source using a Git source (in place of CPAN)
>>> There is very brief mention the cpanm support for git here
>>> https://metacpan.org/pod/distribution/App-cpanminus/bin/cpanm
>>> (search the page for "git" )
>>> There is better documentation (sort of) hidden in the closed issues here
>>> - several uri formats can be used:
>>> https://metacpan.org/pod/distribution/App-cpanminus/bin/cpanm
>>> https://github.com/miyagawa/cpanminus/issues/296
>>>
>>> https://github.com/miyagawa/cpanminus/commit/cf9a72038123a2f721508f17ec8d314cae03245a
>>>
>>> https://github.com/miyagawa/cpanminus/pull/165
>>>
>>> https://github.com/miyagawa/cpanminus/commit/8d82465cc0dde2bd35cd7b454f06f7fba9f205f8
>>>
>>> https://github.com/miyagawa/cpanminus/pull/230
>>>
>>> https://github.com/miyagawa/cpanminus/commit/c588cd7f5fa3fa6c9dcc30d1f4c958c4d45680c1
>>>
>>>
>>> I found two github repos with incidents - the second seems most active
>>> https://github.com/sergadin/dbd-oracle
>>> https://github.com/gitpan/DBD-Oracle
>>>
>>>
>>>
>>> This is also helpful:
>>> https://metacpan.org/pod/DBI#trace
>>> https://metacpan.org/pod/DBI#TRACING
>>>
>>>
>>>
>>>
>>>
>>>
>>> The information contained in this electronic mail transmission is
>>> intended only for the use of the individual or entity named in this
>>> transmission. If you are not the intended recipient of this transmission,
>>> you are hereby notified that any disclosure, copying or distribution of the
>>> contents of this transmission is strictly prohibited and that you should
>>> delete the contents of this transmission from your system immediately. Any
>>> comments or statements contained in this transmission do not necessarily
>>> reflect the views or position of Radial or its subsidiaries and/or
>>> affiliates.
>>>
>>>
>>> --
> Jared Still
> Certifiable Oracle DBA and Part Time Perl Evangelist
> Principal Consultant at Pythian
> Oracle ACE Alumni
> Pythian Blog http://www.pythian.com/blog/author/still/
> Github: https://github.com/jkstill
>
>
>
--000000000000ab61d705b552fcd2
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:georgia,=
serif">Please see below with more details; dbh declaration is of perl hash.=
=C2=A0</div><div class=3D"gmail_default" style=3D"font-family:georgia,serif=
"><pre class=3D"gmail-default gmail-s-code-block gmail-hljs gmail-perl" sty=
le=3D"margin-top:0px;padding:12px;border:0px;font-variant-numeric:inherit;f=
ont-variant-east-asian:inherit;font-stretch:inherit;line-height:1.30769;fon=
t-family:Consolas,Menlo,Monaco,"Lucida Console","Liberation =
Mono","DejaVu Sans Mono","Bitstream Vera Sans Mono"=
;,"Courier New",monospace,sans-serif;font-size:13px;vertical-alig=
n:baseline;box-sizing:inherit;width:auto;max-height:600px;overflow:auto;bac=
kground-color:rgb(253,243,244);border-radius:5px"><code style=3D"margin:0px=
;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight=
:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;verti=
cal-align:baseline;box-sizing:inherit;background-color:inherit;white-space:=
inherit"><span class=3D"gmail-hljs-keyword" style=3D"margin:0px;padding:0px=
;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;fon=
t-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:ba=
seline;box-sizing:inherit">my</span> %connection_hash =3D (); <span class=
=3D"gmail-hljs-comment" style=3D"margin:0px;padding:0px;border:0px;font-sty=
le:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;li=
ne-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:in=
herit"># keep open connections</span>
$connection_hash{$dbname} =3D DBI-><span class=3D"gmail-hljs-keyword" st=
yle=3D"margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:in=
herit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-fam=
ily:inherit;vertical-align:baseline;box-sizing:inherit">connect</span>( $si=
d, $user, $pass, {<span class=3D"gmail-hljs-string" style=3D"margin:0px;pad=
ding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inh=
erit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-=
align:baseline;box-sizing:inherit">AutoCommit =3D></span> $autocommit_fl=
ag});=20
<span class=3D"gmail-hljs-keyword" style=3D"margin:0px;padding:0px;border:0=
px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch=
:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;bo=
x-sizing:inherit">for</span>(<span class=3D"gmail-hljs-keyword" style=3D"ma=
rgin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;fon=
t-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inher=
it;vertical-align:baseline;box-sizing:inherit">keys</span> %connection_hash=
){
lib_log::debug_msg(<span class=3D"gmail-hljs-string" style=3D"margin:0px;pa=
dding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:in=
herit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical=
-align:baseline;box-sizing:inherit">"Connection hash of $_ is $connect=
ion_hash{$_}\n"</span>);
}</code></pre><pre class=3D"gmail-default gmail-s-code-block gmail-hljs gma=
il-perl" style=3D"margin-top:0px;padding:12px;border:0px;font-variant-numer=
ic:inherit;font-variant-east-asian:inherit;font-stretch:inherit;line-height=
:1.30769;font-family:Consolas,Menlo,Monaco,"Lucida Console","=
;Liberation Mono","DejaVu Sans Mono","Bitstream Vera Sa=
ns Mono","Courier New",monospace,sans-serif;font-size:13px;v=
ertical-align:baseline;box-sizing:inherit;width:auto;max-height:600px;overf=
low:auto;background-color:rgb(253,243,244);border-radius:5px"><code style=
=3D"margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inher=
it;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family=
:inherit;vertical-align:baseline;box-sizing:inherit;background-color:inheri=
t;white-space:inherit"><p style=3D"margin-top:0px;margin-right:0px;margin-l=
eft:0px;padding:0px;border:0px;font-variant-numeric:inherit;font-variant-ea=
st-asian:inherit;font-stretch:inherit;line-height:inherit;font-family:Arial=
,"Helvetica Neue",Helvetica,sans-serif;font-size:15px;vertical-al=
ign:baseline;box-sizing:inherit;clear:both;color:rgb(36,39,41);white-space:=
normal">o/p with Dumper:</p><pre class=3D"gmail-default gmail-s-code-block =
gmail-hljs gmail-yaml" style=3D"margin-top:0px;padding:12px;border:0px;font=
-variant-numeric:inherit;font-variant-east-asian:inherit;font-stretch:inher=
it;line-height:1.30769;font-family:Consolas,Menlo,Monaco,"Lucida Conso=
le","Liberation Mono","DejaVu Sans Mono","Bit=
stream Vera Sans Mono","Courier New",monospace,sans-serif;ve=
rtical-align:baseline;box-sizing:inherit;width:auto;max-height:600px;overfl=
ow:auto;border-radius:5px"><code style=3D"margin:0px;padding:0px;border:0px=
;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:i=
nherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-=
sizing:inherit;background-color:inherit;white-space:inherit"><span class=3D=
"gmail-hljs-number" style=3D"margin:0px;padding:0px;border:0px;font-style:i=
nherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-h=
eight:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inheri=
t">2020</span><span class=3D"gmail-hljs-string" style=3D"margin:0px;padding=
:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit=
;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-alig=
n:baseline;box-sizing:inherit">/11/06</span> <span class=3D"gmail-hljs-numb=
er" style=3D"margin:0px;padding:0px;border:0px;font-style:inherit;font-vari=
ant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;fo=
nt-family:inherit;vertical-align:baseline;box-sizing:inherit">06</span><spa=
n class=3D"gmail-hljs-string" style=3D"margin:0px;padding:0px;border:0px;fo=
nt-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inhe=
rit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-siz=
ing:inherit">:32:53</span> <span class=3D"gmail-hljs-string" style=3D"margi=
n:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-w=
eight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;=
vertical-align:baseline;box-sizing:inherit">DEBUG</span> <span class=3D"gma=
il-hljs-string" style=3D"margin:0px;padding:0px;border:0px;font-style:inher=
it;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-heigh=
t:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit">&=
gt;</span> <span class=3D"gmail-hljs-string" style=3D"margin:0px;padding:0p=
x;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;fo=
nt-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:b=
aseline;box-sizing:inherit">Connection</span> <span class=3D"gmail-hljs-str=
ing" style=3D"margin:0px;padding:0px;border:0px;font-style:inherit;font-var=
iant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;f=
ont-family:inherit;vertical-align:baseline;box-sizing:inherit">hash</span> =
<span class=3D"gmail-hljs-string" style=3D"margin:0px;padding:0px;border:0p=
x;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:=
inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box=
-sizing:inherit">of</span> <span class=3D"gmail-hljs-string" style=3D"margi=
n:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-w=
eight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;=
vertical-align:baseline;box-sizing:inherit">ORAOD</span> <span class=3D"gma=
il-hljs-string" style=3D"margin:0px;padding:0px;border:0px;font-style:inher=
it;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-heigh=
t:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit">i=
s</span> <span class=3D"gmail-hljs-string" style=3D"margin:0px;padding:0px;=
border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font=
-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:bas=
eline;box-sizing:inherit">DBI::db=3DHASH(0x43b3650)</span>
=20
<span class=3D"gmail-hljs-number" style=3D"margin:0px;padding:0px;border:0p=
x;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:=
inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box=
-sizing:inherit">2020</span><span class=3D"gmail-hljs-string" style=3D"marg=
in:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-=
weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit=
;vertical-align:baseline;box-sizing:inherit">/11/06</span> <span class=3D"g=
mail-hljs-number" style=3D"margin:0px;padding:0px;border:0px;font-style:inh=
erit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-hei=
ght:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"=
>06</span><span class=3D"gmail-hljs-string" style=3D"margin:0px;padding:0px=
;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;fon=
t-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:ba=
seline;box-sizing:inherit">:32:53</span> <span class=3D"gmail-hljs-string" =
style=3D"margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:=
inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-f=
amily:inherit;vertical-align:baseline;box-sizing:inherit">INFO</span> <span=
class=3D"gmail-hljs-string" style=3D"margin:0px;padding:0px;border:0px;fon=
t-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inher=
it;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizi=
ng:inherit">></span> <span class=3D"gmail-hljs-string" style=3D"margin:0=
px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weig=
ht:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;ver=
tical-align:baseline;box-sizing:inherit">$VAR1</span> <span class=3D"gmail-=
hljs-string" style=3D"margin:0px;padding:0px;border:0px;font-style:inherit;=
font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:i=
nherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit">=3D<=
/span> {
<span class=3D"gmail-hljs-string" style=3D"margin:0px;padding:0px=
;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;fon=
t-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:ba=
seline;box-sizing:inherit">'ORAOD'</span> <span class=3D"gmail-hljs=
-string" style=3D"margin:0px;padding:0px;border:0px;font-style:inherit;font=
-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inher=
it;font-family:inherit;vertical-align:baseline;box-sizing:inherit">=3D><=
/span> <span class=3D"gmail-hljs-string" style=3D"margin:0px;padding:0px;bo=
rder:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-s=
tretch:inherit;line-height:inherit;font-family:inherit;vertical-align:basel=
ine;box-sizing:inherit">bless(</span> {}, <span class=3D"gmail-hljs-string"=
style=3D"margin:0px;padding:0px;border:0px;font-style:inherit;font-variant=
:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-=
family:inherit;vertical-align:baseline;box-sizing:inherit">'DBI::db'=
;</span> <span class=3D"gmail-hljs-string" style=3D"margin:0px;padding:0px;=
border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font=
-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:bas=
eline;box-sizing:inherit">)</span>
}<span class=3D"gmail-hljs-string" style=3D"margin:0px;padding:0px;=
border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font=
-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:bas=
eline;box-sizing:inherit">;</span>
=20
<span class=3D"gmail-hljs-number" style=3D"margin:0px;padding:0px;border:0p=
x;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:=
inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box=
-sizing:inherit">2020</span><span class=3D"gmail-hljs-string" style=3D"marg=
in:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-=
weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit=
;vertical-align:baseline;box-sizing:inherit">/11/06</span> <span class=3D"g=
mail-hljs-number" style=3D"margin:0px;padding:0px;border:0px;font-style:inh=
erit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-hei=
ght:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"=
>06</span><span class=3D"gmail-hljs-string" style=3D"margin:0px;padding:0px=
;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;fon=
t-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:ba=
seline;box-sizing:inherit">:32:53</span> <span class=3D"gmail-hljs-string" =
style=3D"margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:=
inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-f=
amily:inherit;vertical-align:baseline;box-sizing:inherit">DEBUG</span> <spa=
n class=3D"gmail-hljs-string" style=3D"margin:0px;padding:0px;border:0px;fo=
nt-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inhe=
rit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-siz=
ing:inherit">></span> <span class=3D"gmail-hljs-string" style=3D"margin:=
0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-wei=
ght:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;ve=
rtical-align:baseline;box-sizing:inherit">Connection</span> <span class=3D"=
gmail-hljs-string" style=3D"margin:0px;padding:0px;border:0px;font-style:in=
herit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-he=
ight:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit=
">established</span> <span class=3D"gmail-hljs-string" style=3D"margin:0px;=
padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:=
inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertic=
al-align:baseline;box-sizing:inherit">to</span> <span class=3D"gmail-hljs-s=
tring" style=3D"margin:0px;padding:0px;border:0px;font-style:inherit;font-v=
ariant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit=
;font-family:inherit;vertical-align:baseline;box-sizing:inherit">ORAOD</spa=
n> <span class=3D"gmail-hljs-string" style=3D"margin:0px;padding:0px;border=
:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stret=
ch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;=
box-sizing:inherit">with</span> <span class=3D"gmail-hljs-string" style=3D"=
margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;f=
ont-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inh=
erit;vertical-align:baseline;box-sizing:inherit">autocommit</span> <span cl=
ass=3D"gmail-hljs-string" style=3D"margin:0px;padding:0px;border:0px;font-s=
tyle:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;=
line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:=
inherit">=3D</span> <span class=3D"gmail-hljs-number" style=3D"margin:0px;p=
adding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:i=
nherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertica=
l-align:baseline;box-sizing:inherit">0</span></code></pre></code></pre></di=
v><div><div dir=3D"ltr" class=3D"gmail_signature" data-smartmail=3D"gmail_s=
ignature"><div dir=3D"ltr"><div dir=3D"ltr"><i><b><span class=3D"gmail_defa=
ult" style=3D"font-family:georgia,serif"></span></b></i><span style=3D"back=
ground-color:rgb(253,243,244);color:rgb(36,39,41);font-family:Arial,"H=
elvetica Neue",Helvetica,sans-serif;font-size:15px">Basically with thi=
s <span class=3D"gmail_default" style=3D"font-family:georgia,serif">perl ha=
sh </span>DB Handler, I am getting - Segmentation fault (core dumped).<span=
class=3D"gmail_default" style=3D"font-family:georgia,serif"> </span>This p=
rogram was perfectly working fine until we upgraded our Linux Server. So pe=
rl got upgraded from v5.10.1 to v5.16.3. Then onwards we started getting co=
re dump errors. I had to spend lots of time to figure out which code is cau=
sing the core dump and then I am here. Then I have changed the DB Handler w=
ithout a hash like below and it works fine.</span></div><p style=3D"margin-=
top:0px;margin-right:0px;margin-left:0px;padding:0px;border:0px;font-varian=
t-numeric:inherit;font-variant-east-asian:inherit;font-stretch:inherit;line=
-height:inherit;font-family:Arial,"Helvetica Neue",Helvetica,sans=
-serif;font-size:15px;vertical-align:baseline;box-sizing:inherit;clear:both=
;color:rgb(36,39,41);background-color:rgb(253,243,244)"><code style=3D"marg=
in:0px;padding:2px 4px;border:0px;font-style:inherit;font-variant:inherit;f=
ont-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:Con=
solas,Menlo,Monaco,"Lucida Console","Liberation Mono",&=
quot;DejaVu Sans Mono","Bitstream Vera Sans Mono","Cour=
ier New",monospace,sans-serif;font-size:13px;vertical-align:baseline;b=
ox-sizing:inherit;white-space:pre-wrap;border-radius:3px">my $dbh =3D DBI-&=
gt;connect("dbi:$db_driver:$db", $user, $pass, { RaiseError =3D&g=
t; 1, AutoCommit =3D> 0 }) or die ("failed to login $db_user")=
;</code></p><p style=3D"margin-top:0px;margin-right:0px;margin-left:0px;pad=
ding:0px;border:0px;font-variant-numeric:inherit;font-variant-east-asian:in=
herit;font-stretch:inherit;line-height:inherit;font-family:Arial,"Helv=
etica Neue",Helvetica,sans-serif;font-size:15px;vertical-align:baselin=
e;box-sizing:inherit;clear:both;color:rgb(36,39,41);background-color:rgb(25=
3,243,244)">But for me the challenge is, there are other places where hash =
is referred like below and I am trying to find a way how to commit and roll=
back my Oracle DB code without hash<span class=3D"gmail_default" style=3D"f=
ont-family:georgia,serif"> program. </span></p><p style=3D"margin-top:0px;m=
argin-right:0px;margin-left:0px;padding:0px;border:0px;font-variant-numeric=
:inherit;font-variant-east-asian:inherit;font-stretch:inherit;line-height:i=
nherit;font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;fo=
nt-size:15px;vertical-align:baseline;box-sizing:inherit;clear:both;color:rg=
b(36,39,41);background-color:rgb(253,243,244)"><span style=3D"background-co=
lor:inherit;font-family:inherit;font-style:inherit;font-variant-ligatures:i=
nherit;font-variant-caps:inherit;font-weight:inherit;white-space:inherit;fo=
nt-size:13px;color:rgb(34,34,34)">$connection_hash{$dbname}->commit();=
=C2=A0</span></p><div dir=3D"ltr"><span style=3D"background-color:inherit;f=
ont-family:inherit;font-style:inherit;font-variant-ligatures:inherit;font-v=
ariant-caps:inherit;font-weight:inherit;white-space:inherit;font-size:13px"=
>$connection_hash{$dbname}->rollback();</span><i><b><span class=3D"gmail=
_default" style=3D"font-family:georgia,serif"></span><br></b></i></div><div=
dir=3D"ltr"><i><b><br></b></i></div><div dir=3D"ltr"><i><b>Regards</b></i>=
<div><i><b>Srikantha</b></i></div><div><i><b>Mb-9980073640<br></b></i></div=
></div></div></div></div><br></div><br><div class=3D"gmail_quote"><div dir=
=3D"ltr" class=3D"gmail_attr">On Thu, Nov 26, 2020 at 10:41 PM Jared Still =
<<a href=3D"mailto:[email protected]">[email protected]</a>> wrote:<b=
r></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex=
;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"auto"=
>These connection strings are not the same.</div><div dir=3D"auto"><br></di=
v><div dir=3D"auto">There really is not much to say about them without code=
samples that include variable definitions.</div><div dir=3D"auto"><br></di=
v><div dir=3D"auto"><br></div><div><br><div class=3D"gmail_quote"><div dir=
=3D"ltr" class=3D"gmail_attr">On Wed, Oct 28, 2020 at 13:06 Srikantha <<=
a href=3D"mailto:[email protected]" target=3D"_blank">srikanthatn@gmail=
.com</a>> wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"mar=
gin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1=
ex"><div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:geor=
gia,serif">Hello Fennel & David,</div><div class=3D"gmail_default" styl=
e=3D"font-family:georgia,serif">Thanks a lot for your response. FInally I c=
ould sort out the segmentation fault/Memory dump error after too many round=
s of debugging.=C2=A0</div><div class=3D"gmail_default" style=3D"font-famil=
y:georgia,serif">Basically=C2=A0I can blame it on the Oracle connection but=
I may be wrong as there are few minor changes(could be on connection_hash =
too) in the custom perl module which we are using for Oracle connection. I =
am using the perl module one which is using the 2nd method below and after =
that I am not finding the Memory core dump error.=C2=A0</div><div class=3D"=
gmail_default" style=3D"font-family:georgia,serif"><br></div><div class=3D"=
gmail_default" style=3D"font-family:georgia,serif">$connection_hash{$dbname=
} =3D DBI->connect( $sid, $user, $pass, {AutoCommit =3D> $autocommit_=
flag}); -- <span style=3D"background-color:rgb(255,153,0)">Not working</spa=
n><br>my $dbh =3D DBI->connect("dbi:$db_driver:$db", $user, $p=
ass, { RaiseError =3D> 1, AutoCommit =3D> 1 }) or die ("failed t=
o login $db_user"); -- <span style=3D"background-color:rgb(0,255,0)">W=
orking</span><br></div><div class=3D"gmail_default" style=3D"font-family:ge=
orgia,serif"><br></div><div><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"l=
tr"><i><b>Regards</b></i></div></div></div></div></div><div dir=3D"ltr"><di=
v><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div><i><b>Srikantha</=
b></i></div><div><br></div></div></div></div></div><br></div><br><div class=
=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Tue, Oct 27, 2020=
at 2:52 AM Fennell, Brian <<a href=3D"mailto:[email protected]" targe=
t=3D"_blank">[email protected]</a>> wrote:<br></div><blockquote class=
=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rg=
b(204,204,204);padding-left:1ex">
<div dir=3D"ltr">
<div style=3D"font-family:Calibri,Arial,Helvetica,sans-serif;font-size:12pt=
;color:rgb(0,0,0)">
I think the following links should cover all the pieces needed for Perl/JDB=
C/Oracle</div>
<div style=3D"font-family:Calibri,Arial,Helvetica,sans-serif;font-size:12pt=
;color:rgb(0,0,0)">
<br>
</div>
<div style=3D"font-family:Calibri,Arial,Helvetica,sans-serif;font-size:12pt=
;color:rgb(0,0,0)">
<a href=3D"https://www.oracle.com/database/technologies/appdev/jdbc.html" i=
d=3D"gmail-m_1965194924508575104m_-8015409148471072627gmail-m_-329908784778=
5135721gmail-m_-7432152605330080232LPlnk321308" target=3D"_blank">https://w=
ww.oracle.com/database/technologies/appdev/jdbc.html</a>=C2=A0
<div><a href=3D"https://metacpan.org/pod/distribution/DBD-JDBC/JDBC.pod" id=
=3D"gmail-m_1965194924508575104m_-8015409148471072627gmail-m_-3299087847785=
135721gmail-m_-7432152605330080232LPlnk468882" target=3D"_blank">https://me=
tacpan.org/pod/distribution/DBD-JDBC/JDBC.pod</a>=C2=A0</div>
<div><a href=3D"https://sdkman.io/" id=3D"gmail-m_1965194924508575104m_-801=
5409148471072627gmail-m_-3299087847785135721gmail-m_-7432152605330080232LPl=
nk752219" target=3D"_blank">https://sdkman.io/</a></div>
<div>Perl can launch the java server using qx:</div>
<div><a href=3D"https://perlmaven.com/qx" id=3D"gmail-m_1965194924508575104=
m_-8015409148471072627gmail-m_-3299087847785135721gmail-m_-7432152605330080=
232LPlnk342726" target=3D"_blank">https://perlmaven.com/qx</a>=C2=A0</div>
<div><br>
</div>
<div><br>
</div>
<div>This is possibly a tangent:</div>
<div>The last time I dug into this I couldn't figure out how to build D=
BD::Oracle from source using a Git source (in place of CPAN)=C2=A0</div>
<div>There is very brief mention the cpanm support for git here</div>
<div><a href=3D"https://metacpan.org/pod/distribution/App-cpanminus/bin/cpa=
nm" id=3D"gmail-m_1965194924508575104m_-8015409148471072627gmail-m_-3299087=
847785135721gmail-m_-7432152605330080232LPlnk" target=3D"_blank">https://me=
tacpan.org/pod/distribution/App-cpanminus/bin/cpanm</a><br>
</div>
<div>(search the page for "git" )</div>
<div></div>
There is better documentation (sort of) hidden in the closed issues here - =
several uri formats can be used:<br>
<div><a href=3D"https://metacpan.org/pod/distribution/App-cpanminus/bin/cpa=
nm" id=3D"gmail-m_1965194924508575104m_-8015409148471072627gmail-m_-3299087=
847785135721gmail-m_-7432152605330080232LPlnk752419" target=3D"_blank">http=
s://metacpan.org/pod/distribution/App-cpanminus/bin/cpanm</a>=C2=A0
<div><a href=3D"https://github.com/miyagawa/cpanminus/issues/296" id=3D"gma=
il-m_1965194924508575104m_-8015409148471072627gmail-m_-3299087847785135721g=
mail-m_-7432152605330080232LPlnk204524" target=3D"_blank">https://github.co=
m/miyagawa/cpanminus/issues/296</a>=C2=A0</div>
<div><a href=3D"https://github.com/miyagawa/cpanminus/commit/cf9a72038123a2=
f721508f17ec8d314cae03245a" id=3D"gmail-m_1965194924508575104m_-80154091484=
71072627gmail-m_-3299087847785135721gmail-m_-7432152605330080232LPlnk568719=
" target=3D"_blank">https://github.com/miyagawa/cpanminus/commit/cf9a720381=
23a2f721508f17ec8d314cae03245a</a>=C2=A0</div>
<div><a href=3D"https://github.com/miyagawa/cpanminus/pull/165" id=3D"gmail=
-m_1965194924508575104m_-8015409148471072627gmail-m_-3299087847785135721gma=
il-m_-7432152605330080232LPlnk522979" target=3D"_blank">https://github.com/=
miyagawa/cpanminus/pull/165</a>=C2=A0</div>
<div><a href=3D"https://github.com/miyagawa/cpanminus/commit/8d82465cc0dde2=
bd35cd7b454f06f7fba9f205f8" id=3D"gmail-m_1965194924508575104m_-80154091484=
71072627gmail-m_-3299087847785135721gmail-m_-7432152605330080232LPlnk299657=
" target=3D"_blank">https://github.com/miyagawa/cpanminus/commit/8d82465cc0=
dde2bd35cd7b454f06f7fba9f205f8</a>=C2=A0</div>
<div><a href=3D"https://github.com/miyagawa/cpanminus/pull/230" id=3D"gmail=
-m_1965194924508575104m_-8015409148471072627gmail-m_-3299087847785135721gma=
il-m_-7432152605330080232LPlnk995498" target=3D"_blank">https://github.com/=
miyagawa/cpanminus/pull/230</a>=C2=A0</div>
<div><a href=3D"https://github.com/miyagawa/cpanminus/commit/c588cd7f5fa3fa=
6c9dcc30d1f4c958c4d45680c1" id=3D"gmail-m_1965194924508575104m_-80154091484=
71072627gmail-m_-3299087847785135721gmail-m_-7432152605330080232LPlnk537993=
" target=3D"_blank">https://github.com/miyagawa/cpanminus/commit/c588cd7f5f=
a3fa6c9dcc30d1f4c958c4d45680c1</a>=C2=A0</div>
<div><br>
</div>
<div>I found two github repos with incidents - the second seems most active=
</div>
<div><a href=3D"https://github.com/sergadin/dbd-oracle" id=3D"gmail-m_19651=
94924508575104m_-8015409148471072627gmail-m_-3299087847785135721gmail-m_-74=
32152605330080232LPlnk712494" target=3D"_blank">https://github.com/sergadin=
/dbd-oracle</a>=C2=A0
<div><a href=3D"https://github.com/gitpan/DBD-Oracle" id=3D"gmail-m_1965194=
924508575104m_-8015409148471072627gmail-m_-3299087847785135721gmail-m_-7432=
152605330080232LPlnk334590" target=3D"_blank">https://github.com/gitpan/DBD=
-Oracle</a>=C2=A0</div>
<br>
<br>
</div>
<br>
This is also helpful:=C2=A0</div>
<div><a href=3D"https://metacpan.org/pod/DBI#trace" id=3D"gmail-m_196519492=
4508575104m_-8015409148471072627gmail-m_-3299087847785135721gmail-m_-743215=
2605330080232LPlnk283632" target=3D"_blank">https://metacpan.org/pod/DBI#tr=
ace</a>=C2=A0
<div><a href=3D"https://metacpan.org/pod/DBI#TRACING" id=3D"gmail-m_1965194=
924508575104m_-8015409148471072627gmail-m_-3299087847785135721gmail-m_-7432=
152605330080232LPlnk957460" target=3D"_blank">https://metacpan.org/pod/DBI#=
TRACING</a>=C2=A0</div>
<br>
<br>
</div>
<div><br>
</div>
<div><br>
</div>
</div>
=C2=A0<br>
<span style=3D"font-size:12pt;font-family:Cambria,"times new roman&quo=
t;,garamond,serif;color:rgb(255,0,0)"></span><br>
<p style=3D"font-size:8pt;line-height:10pt;font-family:Cambria,"times =
roman",serif">
The information contained in this electronic mail transmission is intended =
only for the use of the individual or entity named in this transmission. If=
you are not the intended recipient of this transmission, you are hereby no=
tified that any disclosure, copying
or distribution of the contents of this transmission is strictly prohibite=
d and that you should delete the contents of this transmission from your sy=
stem immediately. Any comments or statements contained in this transmission=
do not necessarily reflect the
views or position of Radial or its subsidiaries and/or affiliates. </p>
<br>
<br>
<div></div>
</div>
</blockquote></div>
</blockquote></div></div>-- <br><div dir=3D"ltr"><div dir=3D"ltr"><div><div=
dir=3D"ltr"><div><div dir=3D"ltr"><div dir=3D"ltr">Jared Still<br>Certifia=
ble Oracle DBA and Part Time Perl Evangelist<div>Principal Consultant at Py=
thian</div><div>Oracle ACE Alumni<br><div>Pythian Blog=C2=A0<a href=3D"http=
://www.pythian.com/blog/author/still/" target=3D"_blank">http://www.pythian=
.com/blog/author/still/</a></div><div>Github:=C2=A0<a href=3D"https://githu=
b.com/jkstill" target=3D"_blank">https://github.com/jkstill</a><br><br><br>=
</div></div></div></div></div></div></div></div></div>
</blockquote></div>
--000000000000ab61d705b552fcd2--