ora-03127 on istant client 11g

nicofari

Member²
Hello,

I am getting the error:
"ORA-03127: no new operations allowed until the active operation ends"
with my application written in D7 with DOA 4.1.1.0
when using it against a 11.2xe instance on a pc with client 11.2
I was able to reproduce the same error on another pc with client 10.2 forcing the AL32UTF8 character set.
After a short search on the web, I've setted the TOracleSession.BytesPerCharacter to bcAutodetect (was bc1Byte previously). This fixed the problem on the 10.2 machine, but not on the 11g. I've tried also forcing bc2Bytes instead of autodetect but with no success.
Where else could be the problem on the 11g pc ?
Thanks
bye
Nicola
 
I would have guessed that the BytesPerCharacter properto would fix it. I cannot imagine that the issue is related to the client. Are the 10g and 11g PC's using the same database server?
 
yes sure
At first I've tried with autodetect.
that didn't work and my guess was that, for some reason (maybe related to the instant client) autodetect doesn't work.
So i've tried forcing 2bytes but don't know if this would be correct. We don't use unicode, we have though some italian alphabet accented letters
 
Excuse me
The 11g machine is the db server itself, the app is using directly the oracle "server" folder, this is not a instant client installation.
My test is done this way:
1. the 10g machine is my pc
2. i connect to the 11g pc with remote desktop client and then tried there the same .exe (after having copied there of course)
 
this problem does not appear on a 11.0.7.0 client
it does appear on 11.2.0.2.
There is also a metalink note ([ID 1328424.1]) which talks about a problem similar (but I'm not sure it's the same) fixed in the 11.2.0.3.
Do you have any other reports about this problem ?

 
Digging deeper into this.
Problem seems to be in a call to a SP that returns a clob parameter.
I use the technique documented in the help file, something like that:

var
Lob : TLobLocator;
begin
Lob := TLobLocator.Create(OdsValues.Session, otBlob);
try
with QryScript do
begin
// Set the values of the variables
SetComplexVariable('DdScript', Lob);
SetVariable('IdScript', IdScript);
Execute;
...

for some reason, if I the lob result seems incomplete (i copied it into a memo to see it), some text is missing.
After this call *every* other oracle call, even a logoff, raises ora-03127 error.

 
Back
Top