mirror of
https://github.com/berkeleydb/libdb.git
synced 2024-11-16 17:16:25 +00:00
70 lines
2.1 KiB
Text
70 lines
2.1 KiB
Text
#
|
|
# May you do good and not evil.
|
|
# May you find forgiveness for yourself and forgive others.
|
|
# May you share freely, never taking more than you give.
|
|
#
|
|
#***********************************************************************
|
|
# This file implements tests for Berkeley DB specific mem/malloc/mpool leak.
|
|
#
|
|
|
|
set testdir [file dirname $argv0]/../../lang/sql/sqlite/test
|
|
source $testdir/tester.tcl
|
|
reset_db
|
|
|
|
#
|
|
# Test MPOOL leak for in-memory database [#19508]
|
|
#
|
|
set limit 1000
|
|
for {set i 1} {$i<=$limit} {incr i} {
|
|
do_test bdb_inmem_memleak-1.$i {
|
|
db close
|
|
sqlite3 db :memory:
|
|
execsql {
|
|
BEGIN;
|
|
CREATE TABLE t3(x TEXT);
|
|
INSERT INTO t3 VALUES(randstr(10,400));
|
|
INSERT INTO t3 VALUES(randstr(10,400));
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
COMMIT;
|
|
SELECT count(*) FROM t3;
|
|
}
|
|
} {1024}
|
|
}
|
|
|
|
#
|
|
# Test MPOOL leak for temp database [#19508]
|
|
#
|
|
set limit 1000
|
|
for {set i 1} {$i<=$limit} {incr i} {
|
|
do_test bdb_inmem_memleak-2.$i {
|
|
db close
|
|
sqlite3 db {}
|
|
execsql {
|
|
BEGIN;
|
|
CREATE TABLE t3(x TEXT);
|
|
INSERT INTO t3 VALUES(randstr(10,400));
|
|
INSERT INTO t3 VALUES(randstr(10,400));
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
INSERT INTO t3 SELECT randstr(10,400) FROM t3;
|
|
COMMIT;
|
|
SELECT count(*) FROM t3;
|
|
}
|
|
} {1024}
|
|
}
|
|
|
|
finish_test
|