SQLite

View Ticket
Login
Ticket Hash: e9a9fde1f4a2c1ef4e5b06ede806728df84c3917
Title: rtree module malfunctions if db page-size is changed
Status: Fixed Type: Code_Defect
Severity: Critical Priority: Immediate
Subsystem: Extensions Resolution: Fixed
Last Modified: 2010-02-16 11:00:22
Version Found In: 3.6.22
Description:
The following script causes a buffer overread:

<verbatim>
  PRAGMA page_size = 1024;
  CREATE VIRTUAL TABLE rt USING rtree(id, x1, x2, y1, y2);
  INSERT INTO rt VALUES(1, 2, 3, 4, 5);
  PRAGMA page_size = 2048;
  VACUUM;
  SELECT * FROM rt;
</verbatim>
as the r-tree code assumes that the node-size used in the r-tree structures is a function of the database page size.