Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: OCI performance with user callbacks

Re: OCI performance with user callbacks

From: roger <rsr_at_rogerware.com>
Date: Tue, 07 Jan 2003 05:27:36 GMT
Message-ID: <Xns92FBDA73F3027rsrrogerwarecom@204.127.199.17>


Thanks again.
I haven't done too much analysis yet, thought I'd troll for any easy answers here first:)

I'll be moving onto 9.2 RSN, maybe things will just get better, but I kind of doubt it.

I can't imagine why one would use setjmp/longjmp to implement invoking some callback hooks, but then I suppose it's one way to do it.
The psuedo code that I saw someplace in the oracle documentation (you'll pardon the expression:) didn't suggest anything so elaborate was happening.

Pablo Sanchez <pablo_at_dev.null> wrote in news:Xns92FBCC2FF891Dpingottpingottbah_at_209.242.64.107:

> roger <rsr_at_rogerware.com> wrote in
> news:Xns92FB9D821405Brsrrogerwarecom_at_204.127.202.16:
>

>> Hi.  Thanks for your thoughts.

>
> NP! I realize that I don't exactly have your environment but at
> least
> we might be able to bounce some ideas around ...
>
>> I should have mentioned my setup before I suppose...

>
> Usually helpful but in this particular case, not necessarily.
>
>> Solaris 8 single CPU system, Oracle version 9.0.1
>> Though threaded, my application happens to 
>> be "naturally serialized" w.r.t Oracle, so I create 
>> the OCI environment with OCI_NO_MUTEX specified.

>
> Hmmm, working with my current client, their ODBC 'expert' recommended
> when compiling against Oracle 9i, to use 9iR2 -- have you had a
> chance
> to do that?
>
>> I'm not sure what 'context switching' you're 
>> referring to exactly.  The way I see it, I call 
>> some OCIMumbleFunction, which executes in the same 
>> thread context as it is called from. It may eventually 
>> initiate a server request, and so my thread will 
>> sleep for a bit while that goes on.

>
> You're right, it's not in the traditional sense of an O/S process
> doing a context switch but rather a 'longjump' to the call back from
> within the process, then the return -- of course I'm just guessing
> that's what happens within the pcode generated.
>
>> But, I believe that the callbacks would occur before
>> and after any such round trip to the server, and therefore
>> am surprised by the additional overhead they incur.

>
> I completely agree. By any chance, have you strace()'d or truss()'d
> your process(es)? I think it might be helpful to compare with and
> without CB's and see what's up.
Received on Mon Jan 06 2003 - 23:27:36 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US