1*3ca84ba0Sdrh# 2005 August 24 2*3ca84ba0Sdrh# 3*3ca84ba0Sdrh# The author disclaims copyright to this source code. In place of 4*3ca84ba0Sdrh# a legal notice, here is a blessing: 5*3ca84ba0Sdrh# 6*3ca84ba0Sdrh# May you do good and not evil. 7*3ca84ba0Sdrh# May you find forgiveness for yourself and forgive others. 8*3ca84ba0Sdrh# May you share freely, never taking more than you give. 9*3ca84ba0Sdrh# 10*3ca84ba0Sdrh#*********************************************************************** 11*3ca84ba0Sdrh# This file implements regression tests for SQLite library. The 12*3ca84ba0Sdrh# focus of this script is a test of the DELETE command where a 13*3ca84ba0Sdrh# large number of rows are deleted. 14*3ca84ba0Sdrh# 15*3ca84ba0Sdrh 16*3ca84ba0Sdrhset testdir [file dirname $argv0] 17*3ca84ba0Sdrhsource $testdir/tester.tcl 18*3ca84ba0Sdrh 19*3ca84ba0Sdrh# Create a table that contains a large number of rows. 20*3ca84ba0Sdrh# 21*3ca84ba0Sdrhdo_test delete3-1.1 { 22*3ca84ba0Sdrh execsql { 23*3ca84ba0Sdrh CREATE TABLE t1(x integer primary key); 24*3ca84ba0Sdrh BEGIN; 25*3ca84ba0Sdrh INSERT INTO t1 VALUES(1); 26*3ca84ba0Sdrh INSERT INTO t1 VALUES(2); 27*3ca84ba0Sdrh INSERT INTO t1 SELECT x+2 FROM t1; 28*3ca84ba0Sdrh INSERT INTO t1 SELECT x+4 FROM t1; 29*3ca84ba0Sdrh INSERT INTO t1 SELECT x+8 FROM t1; 30*3ca84ba0Sdrh INSERT INTO t1 SELECT x+16 FROM t1; 31*3ca84ba0Sdrh INSERT INTO t1 SELECT x+32 FROM t1; 32*3ca84ba0Sdrh INSERT INTO t1 SELECT x+64 FROM t1; 33*3ca84ba0Sdrh INSERT INTO t1 SELECT x+128 FROM t1; 34*3ca84ba0Sdrh INSERT INTO t1 SELECT x+256 FROM t1; 35*3ca84ba0Sdrh INSERT INTO t1 SELECT x+512 FROM t1; 36*3ca84ba0Sdrh INSERT INTO t1 SELECT x+1024 FROM t1; 37*3ca84ba0Sdrh INSERT INTO t1 SELECT x+2048 FROM t1; 38*3ca84ba0Sdrh INSERT INTO t1 SELECT x+4096 FROM t1; 39*3ca84ba0Sdrh INSERT INTO t1 SELECT x+8192 FROM t1; 40*3ca84ba0Sdrh INSERT INTO t1 SELECT x+16384 FROM t1; 41*3ca84ba0Sdrh INSERT INTO t1 SELECT x+32768 FROM t1; 42*3ca84ba0Sdrh INSERT INTO t1 SELECT x+65536 FROM t1; 43*3ca84ba0Sdrh INSERT INTO t1 SELECT x+131072 FROM t1; 44*3ca84ba0Sdrh INSERT INTO t1 SELECT x+262144 FROM t1; 45*3ca84ba0Sdrh COMMIT; 46*3ca84ba0Sdrh SELECT count(*) FROM t1; 47*3ca84ba0Sdrh } 48*3ca84ba0Sdrh} {524288} 49*3ca84ba0Sdrhdo_test delete3-1.2 { 50*3ca84ba0Sdrh execsql { 51*3ca84ba0Sdrh DELETE FROM t1 WHERE x%2==0; 52*3ca84ba0Sdrh SELECT count(*) FROM t1; 53*3ca84ba0Sdrh } 54*3ca84ba0Sdrh} {262144} 55*3ca84ba0Sdrhintegrity_check delete3-1.3 56*3ca84ba0Sdrh 57*3ca84ba0Sdrhfinish_test 58