CoolFace
Modelpublic

AryaWu/sqlite

sourceHugging Faceupdated 9mo agoView on Hugging Face
0likes
bigsort.test58 linesDownload Raw Back to test
1# 2014 November 262#3# The author disclaims copyright to this source code.  In place of4# a legal notice, here is a blessing:5#6#    May you do good and not evil.7#    May you find forgiveness for yourself and forgive others.8#    May you share freely, never taking more than you give.9#10#***********************************************************************11#12 13set testdir [file dirname $argv0]14source $testdir/tester.tcl15set testprefix bigsort16 17#--------------------------------------------------------------------18# At one point there was an overflow problem if the product of the 19# cache-size and page-size was larger than 2^31. Causing an infinite 20# loop if the product was also an integer multiple of 2^32, or 21# inefficiency otherwise.22#23# This test causes thrashing on machines with smaller amounts of24# memory.  Make sure the host has at least 8GB available before running25# this test.26#27# Update: https://sqlite.org/src/info/7c96a56 adds assert() statements28# that make this test too slow to run with SQLITE_DEBUG builds.29#30if {[catch {exec free | grep Mem:} out] || [lindex $out 1]<8000000} {31  finish_test32  return33}34ifcapable debug {35  finish_test36  return37}38 39do_execsql_test 1.0 {40  PRAGMA page_size = 1024;41  CREATE TABLE t1(a, b);42  BEGIN;43  WITH data(x,y) AS (44    SELECT 1, zeroblob(10000)45    UNION ALL46    SELECT x+1, y FROM data WHERE x < 30000047  )48  INSERT INTO t1 SELECT * FROM data;49  COMMIT;50}51do_execsql_test 1.1 {52  PRAGMA cache_size = 4194304;53  CREATE INDEX i1 ON t1(a, b);54}55 56 57finish_test58