Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: Oracle non-blocking OCI and obreak() hiccups ....
Hi Jerry,
I encountered the same problems with obreak and non-blocking mode. This was described in one of my previous letters to the newsgroup. I inserted this copy too. And I did not find any solution except of restarting application after some timeout. The application should be multithreaded. It works fine under NT, but not under Win95. The last has problems with cleaning frozen threads.
Andrew Protasov
P.S. Copy of the previous letter:
Hi All,
Does anybody know how to reconnect OCI application to Oracle?
I have such a scenario:
- connect - open cursor - parse - execute (long running) - disconnect server wire
Long running execute will run forever in this situation. I have second thread to calculate timeout and call obreak to terminate long running execute. But obreak does not terminate PL/SQL blocks.
I tried non-blocking mode also, but no operations are permitted with this connection until executing statement finish. Each try blocks both threads.
My last idea is to kill the process and restart it. Are there more elegant solutions?
My environment:
Windows NT, SP3,
Oracle Client 8.0.3, Net 8, TCP/IP adapter
Oracle Server 7.2.2.4 for OS/2
Andrew Protasov
Jerry Abramson wrote in message <35609499.A0C02106_at_stratus.com>...
>I have seen some troubling behaviour regarding the obreak() call.
>It appears to perform a blocking OCI function, regardless of the
>status of the connection (blocking or non-blocking).
>
>Anybody using non-blocking OCI or have any information.
>
>Please respond via E-mail, thanks....
>
>------------------------------------------------------------------
> Jerry Abramson
> Stratus Computer Corporation
> jerry_abramson_at_stratus.com [Work] (508) 460-2109
Received on Wed May 20 1998 - 09:47:06 CDT
![]() |
![]() |