SQLite

Ticket Change Details
Login
Overview

Artifact ID: 1cd2172770615c309462f27d850ae6bba4439b949d322e82644bf6320bd67c30
Ticket: a4e06e75a9ab61a127088c4aaa85a6d7a1455f06
False-positive from "PRAGMA integrity_check"
User & Date: drh 2017-07-15 19:32:41
Changes

  1. foundin changed to: "3.19.3"
  2. icomment:
    The PRAGMA integrity_check at the end of the following sequence of code
    reports a "wrong # of entries" error, even though the database is intact
    and correct.
    
    <blockquote><verbatim>
    CREATE TABLE Table1 (col TEXT NOT NULL PRIMARY KEY);
    ATTACH ':memory:' AS db2;
    CREATE TABLE db2.Table2(col1 INTEGER, col2 INTEGER, col3 INTEGER, col4 INTEGER);
    CREATE UNIQUE INDEX db2.idx_col1_unique ON Table2 (col1);
    CREATE UNIQUE INDEX db2.idx_col23_unique ON Table2 (col2, col3);
    CREATE INDEX db2.idx_col2 ON Table2 (col2);
    INSERT INTO Table2 VALUES(1,2,3,4);
    PRAGMA integrity_check;
    </verbatim></blockquote>
    
    Bisecting shows that the problem first appeared with check-in [88439a866]
    on 2016-0319 and was first
    released with SQLite 3.12.0 on 2016-03-29
    
    This problem was reported on the sqlite-users mailing list by
    Brendan E. Coughlan.
    
  3. login: "drh"
  4. mimetype: "text/x-fossil-wiki"
  5. severity changed to: "Important"
  6. status changed to: "Open"
  7. title changed to: "False-positive from "PRAGMA integrity_check""
  8. type changed to: "Code_Defect"