Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | More tests of sqlite3_step() and SQLITE_BUSY added. (CVS 1936) |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
9e6645dd781cb8e422e371ca23766dc1 |
User & Date: | drh 2004-09-03 00:27:57.000 |
Context
2004-09-03
| ||
18:38 | Modify btree.c so that is allocates big data structures using malloc() instead of allocating from the stack. Stack allocations cause problems for embedded systems and pthreads implementations that only allocate a limited amount of stack space. (CVS 1937) (check-in: 4595292f93 user: drh tags: trunk) | |
00:27 | More tests of sqlite3_step() and SQLITE_BUSY added. (CVS 1936) (check-in: 9e6645dd78 user: drh tags: trunk) | |
2004-09-02
| ||
16:53 | Fix a typo in the "News" on the homepage. (CVS 1935) (check-in: 45d7158878 user: drh tags: trunk) | |
Changes
Changes to test/capi3b.test.
︙ | ︙ | |||
9 10 11 12 13 14 15 | # #*********************************************************************** # This file implements regression tests for SQLite library. The # focus of this script testing the callback-free C/C++ API and in # particular the behavior of sqlite3_step() when trying to commit # with lock contention. # | | | 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | # #*********************************************************************** # This file implements regression tests for SQLite library. The # focus of this script testing the callback-free C/C++ API and in # particular the behavior of sqlite3_step() when trying to commit # with lock contention. # # $Id: capi3b.test,v 1.2 2004/09/03 00:27:57 drh Exp $ # set testdir [file dirname $argv0] source $testdir/tester.tcl db close |
︙ | ︙ | |||
81 82 83 84 85 86 87 88 89 90 | } SQLITE_OK do_test capi3b-1.8 { execsql {SELECT * FROM t1} db2 } {1 2 3} do_test capi3b-1.9 { execsql {SELECT * FROM t1} } {1 2 3} catch {db2 close} finish_test | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 | } SQLITE_OK do_test capi3b-1.8 { execsql {SELECT * FROM t1} db2 } {1 2 3} do_test capi3b-1.9 { execsql {SELECT * FROM t1} } {1 2 3} # Start doing a SELECT with one connection. This gets a SHARED lock. # Then do an INSERT with the other connection. The INSERT should # not be able to complete until the SELECT finishes. # do_test capi3b-2.1 { set VM1 [sqlite3_prepare $DB {SELECT * FROM t1} -1 TAIL] sqlite3_step $VM1 } SQLITE_ROW do_test capi3b-2.2 { sqlite3_column_text $VM1 0 } 1 do_test capi3b-2.3 { set VM2 [sqlite3_prepare $DB2 {INSERT INTO t1 VALUES(4)} -1 TAIL] sqlite3_step $VM2 } SQLITE_BUSY do_test capi3b-2.4 { sqlite3_step $VM1 } SQLITE_ROW do_test capi3b-2.5 { sqlite3_column_text $VM1 0 } 2 do_test capi3b-2.6 { sqlite3_step $VM2 } SQLITE_BUSY do_test capi3b-2.7 { sqlite3_step $VM1 } SQLITE_ROW do_test capi3b-2.8 { sqlite3_column_text $VM1 0 } 3 do_test capi3b-2.9 { sqlite3_step $VM2 } SQLITE_BUSY do_test capi3b-2.10 { sqlite3_step $VM1 } SQLITE_DONE do_test capi3b-2.11 { sqlite3_step $VM2 } SQLITE_DONE do_test capi3b-2.12 { sqlite3_finalize $VM1 sqlite3_finalize $VM2 execsql {SELECT * FROM t1} } {1 2 3 4} catch {db2 close} finish_test |