TORAQuery.Executing doesn't become false if it's in a thread

Discussion of open issues, suggestions and bugs regarding ODAC (Oracle Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
salvatore
Posts: 2
Joined: Thu 08 Oct 2009 10:51

TORAQuery.Executing doesn't become false if it's in a thread

Post by salvatore » Thu 08 Oct 2009 11:10

Hi,

I'm building a server application and every query running in his own thread. I need to "stop" the execution of a specified query inside a specific "User session".

I have a problem with NonBlocking = true inside a thread.

MyORAQuery.executing doesn't not become false, althoug if the same code in a non multithreaded application work well.

There is some known problems with this aproach?


Thanks.

Salvatore

Plash
Devart Team
Posts: 2844
Joined: Wed 10 May 2006 07:09

Post by Plash » Fri 09 Oct 2009 08:12

NonBlocking is not an appropriate mode for using from a thread. If you execute you queries from a thread, you should set NonBlocking to False.

salvatore
Posts: 2
Joined: Thu 08 Oct 2009 10:51

Post by salvatore » Fri 09 Oct 2009 09:47

Thanks for your reply.

So, my question become: "How can I stop a query if that query is running inside a thread if breackexec doesn't work?"

Salvatore

Plash
Devart Team
Posts: 2844
Joined: Wed 10 May 2006 07:09

Post by Plash » Mon 12 Oct 2009 07:54

Some Oracle operations are not stopped by the BreakExec method. In this case the only way to stop your query is to kill the thread.

Post Reply