Re: DBD::Oracle 1.25 and DRCP

Rob Fries <[email protected]>
Newsgroups gmane.comp.lang.perl.modules.dbi.general
Message-ID <CANLJvaF+oy8cCRqRktqZs5zcs-XqxJ42KGa=YYv8GGhsrso+Og@mail.gmail.com>
Hey John,

I had to trim out some data ( mostly just Environment Variables ). let
me know if there are any specific you would like to know the value of
if I did not provide below. here is the rest of the output:

        ORACLE_HOME=/app/oracle/product/current
            /app/oracle/product/current -> 11.2.0.2

        OCINlsEnvironmentVariableGet(1,0,93,0,2)=SUCCESS
        OCINlsEnvironmentVariableGet(1,0,94,0,2)=SUCCESS
        OCIEnvNlsEnvCreate(99359fc,THREADED | OBJECT,3,0,0,0,0,0,0,1,1)=SUCCESS
        OCIHandleAlloc(99a1a88,9935a00,OCI_HTYPE_ERROR,0,0)=SUCCESS
        OCIAttrGet(99a1a88,OCI_HTYPE_ENV,cccc7c,0,31,99d5c94)=SUCCESS
        OCIAttrGet(99a1a88,OCI_HTYPE_ENV,cccc7e,0,262,99d5c94)=SUCCESS
           charset id=1, name=US7ASCII, ncharset id=1, name=US7ASCII
(csid: utf8=871 al32utf8=873)
        OCIHandleAlloc(99a1a88,9935a04,OCI_HTYPE_SERVER,0,0)=SUCCESS
        OCIHandleAlloc(99a1a88,9935a08,OCI_HTYPE_SVCCTX,0,0)=SUCCESS
        OCIServerAttach(99d6438, 99d5c94, "uiis01", 6, mode=DEFAULT,0)=SUCCESS
        OCIAttrSet(99d5c18,OCI_HTYPE_SVCCTX,
99d6438,0,Attr=OCI_ATTR_SERVER,99d5c94)=SUCCESS
        OCIHandleAlloc(99a1a88,9935a0c,OCI_HTYPE_SESSION,0,0)=SUCCESS
        OCIAttrSet(9a017b0,OCI_HTYPE_SESSION,
98505d0,8,Attr=OCI_ATTR_USERNAME,99d5c94)=SUCCESS
        OCIAttrSet(9a017b0,OCI_HTYPE_SESSION,
99357a0,7,Attr=OCI_ATTR_PASSWORD,99d5c94)=SUCCESS
        OCISessionBegin(99d5c18,99d5c94,9a017b0,1,mode=DEFAULT 0)=SUCCESS
        OCIAttrSet(99d5c18,OCI_HTYPE_SVCCTX,
9a017b0,0,Attr=OCI_ATTR_SESSION,99d5c94)=SUCCESS
        OCIHandleAlloc(99a1a88,9a13b38,OCI_HTYPE_STMT,0,0)=SUCCESS
        OCIStmtPrepare(99e8914,99d5c94,'alter session set
NLS_DATE_FORMAT = 'DD-MON-YYYY HH24:MI:SS'',60,1,0)=SUCCESS
        OCIAttrGet(99e8914,OCI_HTYPE_STMT,9a13b44,0,OCI_ATTR_STMT_TYPE,99d5c94)=SUCCESS
        dbd_st_prepare'd sql ALTER (pl1, auto_lob1, check_sql1)
        dbd_describe skipped for ALTER
   dbd_st_execute ALTER (out0, lob0)...
Statement Execute Mode is 0 (DEFAULT)
        OCIStmtExecute(99d5c18,99e8914,99d5c94,1,0,0,0,mode=DEFAULT,0)=SUCCESS
        OCIAttrGet(99e8914,OCI_HTYPE_STMT,bfd81d48,0,OCI_ATTR_ROW_COUNT,99d5c94)=SUCCESS
        OCIAttrGet(99e8914,OCI_HTYPE_STMT,bfd81d4e,0,OCI_ATTR_SQLFNCODE,99d5c94)=SUCCESS
        dbd_st_execute ALTER returned (SUCCESS, rpc0, fn52, out0)
        OCIAttrGet(99e8914,OCI_HTYPE_STMT,bfd81d58,0,OCI_ATTR_ROW_COUNT,99d5c94)=SUCCESS
        dbd_st_destroy
        OCIHandleFree(99e8914,OCI_HTYPE_STMT)=SUCCESS
        OCITransRollback(99d5c18,99d5c94,mode=DEFAULT 0)=SUCCESS
        OCISessionEnd(99d5c18,99d5c94,9a017b0,mode=DEFAULT 0)=SUCCESS
        OCIServerDetach(99d6438,99d5c94,mode=DEFAULT,0)=SUCCESS
        OCIHandleFree(9a017b0,OCI_HTYPE_SESSION)=SUCCESS
        OCIHandleFree(99d5c18,OCI_HTYPE_SVCCTX)=SUCCESS
        OCIHandleFree(99d6438,OCI_HTYPE_SERVER)=SUCCESS
        OCIHandleFree(99d5c94,OCI_HTYPE_ERROR)=SUCCESS


Also, passing the Sid this way works perfectly fine for connecting to
the DB. it's just not sending through the Connection Class and I saw
no way of just sending PURITY = SELF which is another way to do this
per the OCI:

http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28395/oci09adv.htm#autoId34

thanks!
-Rob

On Fri, Oct 14, 2011 at 5:52 PM, John Scoles <[email protected]> wrote:
> Hard to say.
>
> Not sureif the way you are pasing in the sid will work.
>
> add dbd_verbose=>15
>
> to the conection options hash
> Run the perl and post the output on this thread
> so I can have a look at what is going on.
>
> Just do a simple connect no need for any other DBI stuff.
>
> I would also give the other flavours of connecting a try as well
>
> Cheers
> John
>
>> Date: Fri, 14 Oct 2011 15:06:48 -0400
>> Subject: Re: DBD::Oracle 1.25 and DRCP
>> From: [email protected]
>> To: [email protected]
>>
>> Hey Cliff and John,
>>
>> on Sept 22, 2010 you posted about issues you were having with getting
>> Oracle DRCP working using the ora_drcp_class. I am running into
>> similar issues and was wondering if you got DRCP to work and have it
>> share the connection. We are using oracle 11.2.0.2 and I have perl
>> v5.8.8, DBI 1.602 and DBD::Oracle 1.28.
>>
>> here is my Tnsnames and basic connect string(DRCP is setup at the
>> Listener):
>>
>> $sid = (DESCRIPTION = (ADDRESS_LIST =
>> (ADDRESS = (PROTOCOL = TCP)(HOST = $host)(PORT = 1521)))
>> (CONNECT_DATA = (SERVICE_NAME = $service)(SERVER=POOLED)))
>>
>>
>> $self->{dbh} = DBI->connect("dbi:Oracle:$config->{sid}",
>> $config->{user}, $config->{pass},
>> { AutoCommit => 0, ora_drcp_class =>
>> "feedAutomation" } );
>>
>> yet I am not seeing the $user.feedAutomation CClass and I see no
>> increase in Num_hits for any class that is there:
>>
>> 1* select * from v$cpool_cc_stats
>>
>> CCLASS_NAME
>>
>> --------------------------------------------------------------------------------
>> NUM_REQUESTS NUM_HITS NUM_MISSES NUM_WAITS WAIT_TIME CLIENT_REQ_TIMEOUTS
>> ------------ ---------- ---------- ---------- ----------
>> -------------------
>> NUM_AUTHENTICATIONS
>> -------------------
>>
>> $user.SHARED
>> 1346245 0 1346245 61582 0 0
>> 1346245
>>
>> Everything runs fine, it just doesn't share the connections and
>> increase Num_hits.
>>
>> any thoughts?
>>
>> thanks!
>> -Rob
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.