Issue Details (XML | Word | Printable)

Key: CORE-3374
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Dmitry Yemanov
Reporter: Dmitry Yemanov
Votes: 0
Watchers: 0

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

Server may crash or corrupt data if SELECT WITH LOCK is issued against records not in the latest format

Created: 04/Mar/11 03:45 PM   Updated: 25/Sep/15 12:41 PM
Component/s: Engine
Affects Version/s: 2.1.0, 2.0.4, 2.1.1, 2.0.5, 2.1.2, 2.1.3, 1.5.6, 3.0 Initial, 2.0.6, 2.5.0, 2.1.4
Fix Version/s: 2.5.1, 2.0.7, 2.1.5, 3.0 Alpha 1

Issue Links:

QA Status: Done successfully
Test Details: Actually there is NO crash in 2.5.0, checked SS/SC/CS, WI-V2.5.0.26074

 Description  « Hide
Test case:

create table test (col1 int, col2 varchar(10), col3 date);
insert into test values (1, 'qwerty', current_date);

alter table test drop col2;
select * from test order by col1 with lock; -- crash here


1) Sorting must be present (in order to set the re-fetch flag)
2) The on-disk record must be in the prior format which must be longer than the current one

In this case deallocated memory is accessed which may lead to either crashing (most probably) or record/index errors.

 All   Comments   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Pavel Cisar added a comment - 25/Sep/15 12:41 PM
Test created.