Firebird 2.5 statement cancelling

Discussion of open issues, suggestions and bugs regarding IBDAC (InterBase Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
upscene
Posts: 306
Joined: Thu 19 Oct 2006 08:13

Firebird 2.5 statement cancelling

Post by upscene » Wed 24 Mar 2010 08:41

Hi,

Firebird 2.5 supports statement cancelling via the client API, it relies on a new function in the client library.

Does IBDac supports this function yet via the TGDSCommand.BreakExec method?


With regards,

Martijn Tonies
Upscene Productions

Dimon
Devart Team
Posts: 2910
Joined: Mon 05 Mar 2007 16:32

Post by Dimon » Wed 24 Mar 2010 14:28

IBDAC executes the isc_dsql_free_statement API function on BreakExec.

upscene
Posts: 306
Joined: Thu 19 Oct 2006 08:13

Post by upscene » Wed 24 Mar 2010 14:34

Dimon wrote:IBDAC executes the isc_dsql_free_statement API function on BreakExec.
So, that's a "no"?
Cancel Operation Function
Alex Peshkov
New fb_cancel_operation() API call, allowing cancellation of the current activity being performed by some kind
of blocking API call in the given connection.

Syntax

Code: Select all

   ISC_STATUS fb_cancel_operation(ISC_STATUS* status_vector,
                                  isc_db_handle* db_handle,
                                  ISC_USHORT option);

Dimon
Devart Team
Posts: 2910
Joined: Mon 05 Mar 2007 16:32

Post by Dimon » Fri 26 Mar 2010 11:27

Thank you for information. This functionality will be included in the next IBDAC build.

SyntaXErr0r
Posts: 1
Joined: Sat 16 Oct 2010 10:19

Post by SyntaXErr0r » Sat 16 Oct 2010 10:59

Dimon wrote:Thank you for information. This functionality will be included in the next IBDAC build.

Code: Select all

ISC_STATUS fb_cancel_operation(ISC_STATUS* status_vector, 
                                  isc_db_handle* db_handle, 
                                  ISC_USHORT option);
This functionality included in new version (IBDAC 3.50)? Thanks.

AndreyZ

Post by AndreyZ » Mon 25 Oct 2010 08:59

IBDAC 3.50 supports fb_cancel_operation. You can use the BreakExec method to break execution of a SQL statement on the server. For more information please read IBDAC Reference Manual.

ricardouven
Posts: 4
Joined: Wed 07 Apr 2010 20:48
Location: maracaibo, venezuela
Contact:

breakExec

Post by ricardouven » Wed 27 Oct 2010 18:03

AndreyZ wrote:IBDAC 3.50 supports fb_cancel_operation. You can use the BreakExec method to break execution of a SQL statement on the server. For more information please read IBDAC Reference Manual.
.

Hi. i test this function (ver 3.5) but query still runing...
what can i do for cancel any running query?..

thanks!

AndreyZ

Post by AndreyZ » Fri 29 Oct 2010 12:51

When you call the BreakExec method IBDAC calls fb_cancel_operation with the fb_cancel_raise option. Please read about specifications of this operation in the README.fb_cancel_operation.txt file of the \doc directory.
Also you can cancel statement execution by deleting a record from the MON$STATEMENTS table:

Code: Select all

delete from mon$statements where mon$sql_text = :sql_text

Post Reply