Stability issue with Firebird 2.5
Posted: Wed 07 Mar 2012 13:55
Hi,
I have a stability issue in the following case:
After creating and dropping temporary tables, sometimes the drop fails with an "object in use" error.
This error is handled properly and the application continues to execute SQL statements.
However, after the first time this error occurs, the application becomes unstable: creating and executing new SELECT queries works, but when releasing these query objects, an exception with the same error message "object in use" as before is raised. The error occurs when releasing the dataset of SELECT statements that are executed after the initial DROP TABLE which encounters the "object in use" error. It seems that the previous error state is not well cleared and that the error remains present somewhere in the driver or client. An access violation or an invalid pointer exception often occurs after the subsequent "object in use" errors. After executing some statements, the application will rapidly block (100% cpu or no response) and must be killed.
I don't know if this issue is related to the driver or the client.
I have tested with the 2.5 and 2.1 FB clients, the problem is very reproducible.
With the 1.5.6.5026 FB client, I did not reproduce the problem but I got a lot of silent "socket error 10061" exceptions, however, the application seems to work correctly.
I have also tested the 2.70.0.27 dbexpida driver and 3.1.2.0 demo driver. The issue is reproducible in both cases.
Can you please give me an answer for the following questions:
- is this issue related to the driver or to the client, should I post this issue on Firebird's issue tracker?
- as a temporary solution, is it safe to use the version 1.5 of fbclient with the version 2.5 of the server?
Thanks for your answer.
Environment:
- Delphi 7
- Firebird 2.5.1.26351
- dbexpida 2.70.0.27
I have a stability issue in the following case:
After creating and dropping temporary tables, sometimes the drop fails with an "object in use" error.
This error is handled properly and the application continues to execute SQL statements.
However, after the first time this error occurs, the application becomes unstable: creating and executing new SELECT queries works, but when releasing these query objects, an exception with the same error message "object in use" as before is raised. The error occurs when releasing the dataset of SELECT statements that are executed after the initial DROP TABLE which encounters the "object in use" error. It seems that the previous error state is not well cleared and that the error remains present somewhere in the driver or client. An access violation or an invalid pointer exception often occurs after the subsequent "object in use" errors. After executing some statements, the application will rapidly block (100% cpu or no response) and must be killed.
I don't know if this issue is related to the driver or the client.
I have tested with the 2.5 and 2.1 FB clients, the problem is very reproducible.
With the 1.5.6.5026 FB client, I did not reproduce the problem but I got a lot of silent "socket error 10061" exceptions, however, the application seems to work correctly.
I have also tested the 2.70.0.27 dbexpida driver and 3.1.2.0 demo driver. The issue is reproducible in both cases.
Can you please give me an answer for the following questions:
- is this issue related to the driver or to the client, should I post this issue on Firebird's issue tracker?
- as a temporary solution, is it safe to use the version 1.5 of fbclient with the version 2.5 of the server?
Thanks for your answer.
Environment:
- Delphi 7
- Firebird 2.5.1.26351
- dbexpida 2.70.0.27