Issue Details (XML | Word | Printable)

Key: CORE-2173
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Alexander Peshkov
Reporter: Roman Simakov
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Firebird Core

Server crash after ubnormal disconnect with open ExecuteStatement

Created: 07/Nov/08 09:18 AM   Updated: 26/Jan/09 10:11 AM
Component/s: Engine
Affects Version/s: 2.1.0, 2.0.4, 2.1.1, 2.0.5
Fix Version/s: 2.1.2, 2.0.6

Time Tracking:
Not Specified

Environment:
All platforms
Issue Links:
Depend
 
Relate
 

Planning Status: Unspecified


 Description  « Hide
Test case:

1) Create database.

CREATE TABLE T (I INTEGER);

SET TERM ^ ;

CREATE PROCEDURE P RETURNS (O INTEGER)
AS
begin
    for execute statement 'select i from t' into :o do
    begin
        suspend;
    end
end
^

SET TERM ; ^

2) Generate 10000 records by IBExpert for inserting into T. It's for perform not full fetch.
3) Execute 'select * from p' by IBExpert (isql fetch all records and in this case bug is not reproduced)
4) Kill ibexpert.exe process by Tast Manager, since while normal exit it ask to confirm or rallback transaction.

AV occurs in ExecuteStatement::Close in CallbackWrapper since tdbb->tdbb_transaction at this moment is NULL.

 All   Comments   Work Log   Change History   Version Control   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Alexander Peshkov added a comment - 10/Nov/08 06:14 AM
It's wider reproducible.

Alexander Peshkov added a comment - 10/Nov/08 06:15 AM - edited
sorry - selected in wrong box

Alexander Peshkov added a comment - 10/Nov/08 07:07 AM
If we decide, it's easy to have a fix in 2.0.5.
But taking into an account we never had this problem for ~2 years - not sure it's worth rewriting release notes now.