Version History
1.0.82.0 - July XX, 2012
-
-
- Updated to SQLite 3.7.13. +
- Updated to SQLite 3.7.13.
- Add SetMemoryStatus static method to the SQLiteConnection class.
- Improve threaded handling of the delegate used by the SQLiteLog class.
1.0.81.0 - May 27, 2012
-
Index: Tests/basic.eagle
==================================================================
--- Tests/basic.eagle
+++ Tests/basic.eagle
@@ -1382,14 +1382,15 @@
lappend result [$collection GetValues $item]
}
set result
} -cleanup {
- cleanupDb $fileName
+ unset -nocomplain result item collection reader command connection
+
+ cleanupDb $fileName; # NOTE: After object disposal.
- unset -nocomplain result item collection reader command connection db \
- fileName
+ unset -nocomplain db fileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{{26 26} {zebra zebra}}}
###############################################################################
Index: Tests/common.eagle
==================================================================
--- Tests/common.eagle
+++ Tests/common.eagle
@@ -594,10 +594,21 @@
#
set db [sql open -type SQLite [subst $connection]]
}
proc cleanupDb { fileName {varName db} } {
+ #
+ # NOTE: Attempt to force all pending "garbage" objects to be collected,
+ # including SQLite statements and backup objects; this should allow
+ # the underlying database file to be deleted.
+ #
+ if {[catch {object invoke GC GetTotalMemory true} error]} then {
+ tputs $channel [appendArgs \
+ "==== WARNING: failed full garbage collection, error: " \
+ \n\t $error \n]
+ }
+
#
# NOTE: Refer to the specified variable (e.g. "db") in the context of the
# caller. The handle to the opened database is stored there.
#
upvar 1 $varName db
@@ -667,10 +678,21 @@
return $code
}
proc cleanupFile { fileName {force false} } {
+ #
+ # NOTE: Attempt to force all pending "garbage" objects to be collected,
+ # including SQLite statements and backup objects; this should allow
+ # the underlying database file to be deleted.
+ #
+ if {[catch {object invoke GC GetTotalMemory true} error]} then {
+ tputs $channel [appendArgs \
+ "==== WARNING: failed full garbage collection, error: " \
+ \n\t $error \n]
+ }
+
#
# NOTE: Check if the file still exists.
#
if {[file exists $fileName]} then {
#
Index: Tests/tkt-343d392b51.eagle
==================================================================
--- Tests/tkt-343d392b51.eagle
+++ Tests/tkt-343d392b51.eagle
@@ -179,15 +179,15 @@
[expr {[info exists errors] ? $errors : ""}] \
[expr {$code eq "Ok" ? [catch {
object invoke _Dynamic${id}.Test${id} Main
} result] : [set result ""]}] $result
} -cleanup {
+ cleanupDb $fileName; unset -nocomplain db fileName
cleanupDb $otherFileName
- cleanupDb $fileName
unset -nocomplain result code results errors i sql otherTable otherDbName \
- otherDataSource dataSource id db otherFileName fileName
+ otherDataSource dataSource id otherFileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -match \
glob -result {* System.Data.DBConcurrencyException: *}}
###############################################################################
@@ -285,15 +285,15 @@
[expr {[info exists errors] ? $errors : ""}] \
[expr {$code eq "Ok" ? [catch {
object invoke _Dynamic${id}.Test${id} Main
} result] : [set result ""]}] $result
} -cleanup {
+ cleanupDb $fileName; unset -nocomplain db fileName
cleanupDb $otherFileName
- cleanupDb $fileName
unset -nocomplain result code results errors i sql otherTable otherDbName \
- otherDataSource dataSource id db otherFileName fileName
+ otherDataSource dataSource id otherFileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -match \
regexp -result {^Ok System#CodeDom#Compiler#CompilerResults#\d+ \{\} 0 \{\}$}}
###############################################################################
@@ -324,15 +324,14 @@
list [sql execute -execute reader -format list $db "SELECT x FROM t1;"] \
[sql execute -execute reader -format list $db [appendArgs \
"SELECT x FROM " ${otherTable} ";"]]
} -cleanup {
+ cleanupDb $fileName; unset -nocomplain db fileName
cleanupDb $otherFileName
- cleanupDb $fileName
- unset -nocomplain i sql otherTable otherDbName otherDataSource db \
- otherFileName fileName
+ unset -nocomplain i sql otherTable otherDbName otherDataSource otherFileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -result \
{{1 2} {2 4}}}
###############################################################################
@@ -423,18 +422,18 @@
[expr {[info exists errors] ? $errors : ""}] \
[expr {$code eq "Ok" ? [catch {
object invoke _Dynamic${id}.Test${id} Main
} result] : [set result ""]}] $result
} -cleanup {
+ cleanupDb $fileName; unset -nocomplain db fileName
cleanupDb $otherFileName
- cleanupDb $fileName
unset -nocomplain result code results errors i sql otherTable otherDbName \
- otherDataSource dataSource id db otherFileName fileName
+ otherDataSource dataSource id otherFileName
} -constraints \
{eagle monoBug28 command.sql compile.DATA SQLite System.Data.SQLite} -match \
regexp -result {^Ok System#CodeDom#Compiler#CompilerResults#\d+ \{\} 0 \{\}$}}
###############################################################################
runSQLiteTestEpilogue
runTestEpilogue
Index: readme.htm
==================================================================
--- readme.htm
+++ readme.htm
@@ -4,11 +4,11 @@
- Updated to SQLite 3.7.13. +
- Updated to SQLite 3.7.13.
- Add SetMemoryStatus static method to the SQLiteConnection class.
- Improve threaded handling of the delegate used by the SQLiteLog class.
- Updated to SQLite 3.7.13. +
- Updated to [http://www.sqlite.org/releaselog/3_7_13.html|SQLite 3.7.13].
- Add SetMemoryStatus static method to the SQLiteConnection class.
- Improve threaded handling of the delegate used by the SQLiteLog class.
Version 1.0.82.0 July XX, 2012 (release scheduled)
-Using SQLite 3.7.13 (unreleased trunk)
+Using SQLite 3.7.13
Originally written by Robert Simpson
Released to the public domain, use at your own risk!
Official provider website: http://system.data.sqlite.org/
Legacy versions: http://sqlite.phxsoftware.com/
@@ -188,11 +188,11 @@
1.0.82.0 - July XX, 2012
-
-
1.0.81.0 - May 27, 2012 Index: www/news.wiki ================================================================== --- www/news.wiki +++ www/news.wiki @@ -4,11 +4,11 @@
1.0.82.0 - July XX, 2012 (release scheduled)
-
-
1.0.81.0 - May 27, 2012