SQLite

Check-in [5e4df44181]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Add tests to make sure the busy handler resets. (CVS 4865)
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 5e4df441815ed7d02e9ad8ee2e1c2f937ee675d7
User & Date: drh 2008-03-15 02:09:22.000
Context
2008-03-15
14:53
Skip tests that require setting detailed unix permissions on files when running on filesystems such as AFP that do not support that capability. (CVS 4866) (check-in: 5589b9d395 user: drh tags: trunk)
02:09
Add tests to make sure the busy handler resets. (CVS 4865) (check-in: 5e4df44181 user: drh tags: trunk)
2008-03-14
19:33
Reset the busy callback iteration counter at the beginning of each lock test loop. (CVS 4864) (check-in: 66777f0481 user: drh tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to test/busy.test.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 2005 july 8
#
# The author disclaims copyright to this source code.  In place of
# a legal notice, here is a blessing:
#
#    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 test the busy handler
#
# $Id: busy.test,v 1.2 2005/09/17 18:02:37 drh Exp $


set testdir [file dirname $argv0]
source $testdir/tester.tcl

do_test busy-1.1 {
  sqlite3 db2 test.db












|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 2005 july 8
#
# The author disclaims copyright to this source code.  In place of
# a legal notice, here is a blessing:
#
#    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 test the busy handler
#
# $Id: busy.test,v 1.3 2008/03/15 02:09:22 drh Exp $


set testdir [file dirname $argv0]
source $testdir/tester.tcl

do_test busy-1.1 {
  sqlite3 db2 test.db
28
29
30
31
32
33
34
35
36
37
38
39
40

















41
42
43
44
  lappend ::busyargs $x
  if {$x>2} {return 1}
  return 0
}
set busyargs {}
do_test busy-1.2 {
  db busy busy
  db2 eval {begin exclusive}
  catchsql {begin immediate}
} {1 {database is locked}}
do_test busy-1.3 {
  set busyargs
} {0 1 2 3}


















db2 close

finish_test







|
|




>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>




28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
  lappend ::busyargs $x
  if {$x>2} {return 1}
  return 0
}
set busyargs {}
do_test busy-1.2 {
  db busy busy
  db2 eval {BEGIN EXCLUSIVE}
  catchsql {BEGIN IMMEDIATE}
} {1 {database is locked}}
do_test busy-1.3 {
  set busyargs
} {0 1 2 3}
do_test busy-1.4 {
  set busyargs {}
  catchsql {BEGIN IMMEDIATE}
  set busyargs
} {0 1 2 3}

do_test busy-2.1 {
  db2 eval {COMMIT}
  db eval {BEGIN; INSERT INTO t1 VALUES(5)}
  db2 eval {BEGIN; SELECT * FROM t1}
  set busyargs {}
  catchsql COMMIT
} {1 {database is locked}}
do_test busy-2.2 {
  set busyargs
} {0 1 2 3}


db2 close

finish_test