Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Simplify critical handle count result matching by the threading test. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
be3b5a073ae0ffd7cc0e05fcdb85676f |
User & Date: | mistachkin 2012-10-26 20:47:13.906 |
Context
2012-10-26
| ||
22:34 | Further improvements to the threading test and test suite infrastructure related to garbage collection. check-in: 4a6f2f3342 user: mistachkin tags: trunk | |
20:47 | Simplify critical handle count result matching by the threading test. check-in: be3b5a073a user: mistachkin tags: trunk | |
20:37 | Add the ability for the test suite to track counts of CriticalHandle derived object instances. Also, slightly simplify test for ticket [6c6ecccc5f]. check-in: 09c5128542 user: mistachkin tags: trunk | |
Changes
Changes to Tests/common.eagle.
︙ | ︙ | |||
1099 1100 1101 1102 1103 1104 1105 | if {[catch {object invoke GC GetTotalMemory true} error]} then { tputs $channel [appendArgs \ "==== WARNING: failed full garbage collection, error: " \ \n\t $error \n] } } | | < < < < < < < < < < < < | 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 | if {[catch {object invoke GC GetTotalMemory true} error]} then { tputs $channel [appendArgs \ "==== WARNING: failed full garbage collection, error: " \ \n\t $error \n] } } proc getSQLiteHandleCounts { channel {quiet false} } { set result [list] if {[haveConstraint \ defineConstant.System.Data.SQLite.COUNT_HANDLE]} then { # # NOTE: Add each critical handle count to the resulting list. # foreach name [list connectionCount statementCount backupCount] { set value [object invoke -flags +NonPublic \ System.Data.SQLite.UnsafeNativeMethods $name] if {!$quiet} then { tputs $channel [appendArgs \ "---- critical handle count \"" $name "\" is " $value \n] } lappend result $value } } elseif {!$quiet} then { # # NOTE: The actual handle counts are not available; therefore, just # return an empty list. # tputs $channel "---- critical handle counts unavailable\n" } |
︙ | ︙ | |||
1318 1319 1320 1321 1322 1323 1324 | # instead. # foreach directory [list data_store_directory temp_store_directory] { set sql [appendArgs "PRAGMA " $directory " = \"\";"] if {[catch {executeSql $sql} result] == 0} then { tputs $channel [appendArgs \ | | | | 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 | # instead. # foreach directory [list data_store_directory temp_store_directory] { set sql [appendArgs "PRAGMA " $directory " = \"\";"] if {[catch {executeSql $sql} result] == 0} then { tputs $channel [appendArgs \ "---- execute PRAGMA " $directory "... ok: \"" \ $result \"\n] } else { tputs $channel [appendArgs \ "---- execute PRAGMA " $directory "... error: " \ \n\t $result \n] } } } |
︙ | ︙ |
Changes to Tests/thread.eagle.
︙ | ︙ | |||
17 18 19 20 21 22 23 | package require System.Data.SQLite.Test runSQLiteTestPrologue ############################################################################### checkForSQLiteDirectories $test_channel true | | | 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | package require System.Data.SQLite.Test runSQLiteTestPrologue ############################################################################### checkForSQLiteDirectories $test_channel true set handle_counts [getSQLiteHandleCounts $test_channel] set memory_used [reportSQLiteResources $test_channel] ############################################################################### # # NOTE: How many test threads should be created and used for these tests? This # value must be at least two. The first test thread (at index 0) is |
︙ | ︙ | |||
446 447 448 449 450 451 452 | list $code $results \ [expr {[info exists errors] ? $errors : ""}] \ [expr {$code eq "Ok" ? [catch { object invoke _Dynamic${id}.Test${id} RunTestThreads } result] : [set result ""]}] $result \ [collectGarbage $test_channel] \ | | | 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 | list $code $results \ [expr {[info exists errors] ? $errors : ""}] \ [expr {$code eq "Ok" ? [catch { object invoke _Dynamic${id}.Test${id} RunTestThreads } result] : [set result ""]}] $result \ [collectGarbage $test_channel] \ [getSQLiteHandleCounts $test_channel] \ [reportSQLiteResources $test_channel] } -cleanup { cleanupDb $fileName unset -nocomplain result results errors code sql dataSource id db fileName } -time true -constraints {eagle monoBug28 command.sql compile.DATA SQLite\ System.Data.SQLite} -match regexp -result [appendArgs "^Ok\ |
︙ | ︙ |