Issue Details (XML | Word | Printable)

Key: CORE-4036
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Dmitry Yemanov
Reporter: Pavel Zotov
Votes: 0
Watchers: 6
Operations

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

Bugcheck or database corruption when attempting to store long incompressible data into a table

Created: 14/Jan/13 02:17 PM   Updated: 12/Jul/15 06:24 AM
Component/s: Engine
Affects Version/s: 2.1.0, 2.1.1, 2.0.5, 2.1.2, 2.1.3, 3.0 Initial, 2.0.6, 2.5.0, 2.1.4, 2.5.1, 2.0.7, 2.1.5, 2.5.2
Fix Version/s: 3.0 Alpha 1, 2.1.6, 2.5.3

Issue Links:
Relate
 

QA Status: Done successfully


 Description  « Hide
G:\TEMP>isql
Use CONNECT or CREATE DATABASE to specify a database
SQL> create database 't2.fdb'; commit;
SQL> show version;
ISQL Version: WI-V2.5.3.26566 Firebird 2.5
Server version:
Firebird/x86/Windows NT (access method), version "WI-V2.5.3.26566 Firebird 2.5"
Firebird/x86/Windows NT (remote server), version "WI-V2.5.3.26566 Firebird 2.5/XNet (TLPRG)/P12"
Firebird/x86/Windows NT (remote interface), version "WI-V2.5.3.26566 Firebird 2.5/XNet (TLPRG)/P12"
on disk structure version 11.2
SQL> create table tw(s01 varchar(32600), s02 varchar(32600)); commit;
SQL> insert into tw select rpad('',32600, gen_uuid()),rpad('',32600, gen_uuid()) from rdb$database;
Statement failed, SQLSTATE = XX001
database file appears corrupt (G:\TEMP\T2.FDB)
-wrong page type
-page 165 is of wrong type (expected 4, found -97)
-internal Firebird consistency check (error during savepoint backout (290), file: exe.cpp line: 4141)
SQL> rollback;
Statement failed, SQLSTATE = XX000
internal Firebird consistency check (can't continue after bugcheck)
SQL> exit;
Statement failed, SQLSTATE = XX000
internal Firebird consistency check (can't continue after bugcheck)
Statement failed, SQLSTATE = XX000
internal Firebird consistency check (can't continue after bugcheck)

G:\TEMP>gfix -v -full T2.FDB
-- no output --

 All   Comments   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Dmitry Yemanov added a comment - 14/Jan/13 06:03 PM
Hard case when the record of 65208 bytes is compressed into 65722 bytes and no 64KB overflow protection is made. Sigh.