Performance for TIBCQuery.Execute
Posted: Tue 11 Dec 2012 19:57
Hi
We are experiencing a problem in some of our customers that is related to the performance of opening a query using the Execute method from TIBCQuery.
In most cases the databse file is big (Like over 10GB), and we are using Firebird 2.5.
When we call the Execute method it could take over 1 minute to open, during that time, since the Execute is synchronous (It will just return to me when it finishes opening the query) the calling thread will be hang, although we use a separated thread to open the query the problem is if we want to finish this thred before execute is finished, so we can´t, we have to wait until the query is finished.
Is there some way to call this Execute method assynchronously and cancel it whenever we want?
Is there a way to improve this opening performance? We don´t know if this is related to firebird itself or IBDAC... How does firebird scale to big database files?
We are experiencing a problem in some of our customers that is related to the performance of opening a query using the Execute method from TIBCQuery.
In most cases the databse file is big (Like over 10GB), and we are using Firebird 2.5.
When we call the Execute method it could take over 1 minute to open, during that time, since the Execute is synchronous (It will just return to me when it finishes opening the query) the calling thread will be hang, although we use a separated thread to open the query the problem is if we want to finish this thred before execute is finished, so we can´t, we have to wait until the query is finished.
Is there some way to call this Execute method assynchronously and cancel it whenever we want?
Is there a way to improve this opening performance? We don´t know if this is related to firebird itself or IBDAC... How does firebird scale to big database files?