B
benjo
Hi all,
I have developed an application which strongly access an Oracle 10g
DB. The application has to be running for days but i got this problem.
The code execution stay blocked in one of these three statements:
oraConnection.Open();
oraConnection.Close();
oda.Fill(dt); (where oda is an instance of OracleDataAccess an dt an
instance od DataTable class)
The really strange thing is that these lines are succesfully executed
a lot of time but in some case (about 1 time every 6 hours or in some
case 1 time every 24 hour, the frequency is not really fixed) the
execution of one of the above statements never ends.
For instance in case of Close() the connection from Oracle side has
already closed (I have verified with appropriate query on session) but
the execution of the C# statement is still living and not returning.
In case of oda.Fill(dt), I have just found that, the execution as i
can see now (19-Dec-07 10:20:00) from disassembly is blocked in the
statement "nop" since 18-Dec-07 22:49:00
oda.Fill(dt);
0000016a mov edx,ebx
0000016c mov ecx,dword ptr [esp+14h]
00000170 cmp dword ptr [ecx],ecx
00000172 call 60F68188
00000177 nop ------------THIS IS THE BLOCKING STATEMENT
hope someone can help me, i'm really in trouble :S
bye
benjo
I have developed an application which strongly access an Oracle 10g
DB. The application has to be running for days but i got this problem.
The code execution stay blocked in one of these three statements:
oraConnection.Open();
oraConnection.Close();
oda.Fill(dt); (where oda is an instance of OracleDataAccess an dt an
instance od DataTable class)
The really strange thing is that these lines are succesfully executed
a lot of time but in some case (about 1 time every 6 hours or in some
case 1 time every 24 hour, the frequency is not really fixed) the
execution of one of the above statements never ends.
For instance in case of Close() the connection from Oracle side has
already closed (I have verified with appropriate query on session) but
the execution of the C# statement is still living and not returning.
In case of oda.Fill(dt), I have just found that, the execution as i
can see now (19-Dec-07 10:20:00) from disassembly is blocked in the
statement "nop" since 18-Dec-07 22:49:00
oda.Fill(dt);
0000016a mov edx,ebx
0000016c mov ecx,dword ptr [esp+14h]
00000170 cmp dword ptr [ecx],ecx
00000172 call 60F68188
00000177 nop ------------THIS IS THE BLOCKING STATEMENT
hope someone can help me, i'm really in trouble :S
bye
benjo