windows/amd64: win32longpath.test fails
Discovered in builder logs at tip:
Log file created at: 2021/10/06 13:36:41
Running on machine: win64
Binary: Built with gc go1.17.1 for windows/amd64
...
Time: win32heap.test 47 ms
Time: win32lock.test 50390 ms
! win32longpath-1.3 expected: [1 {unable to open database file}]
! win32longpath-1.3 got: [0 {}]
testfixture.exe: 32
while executing
"error $msg "
(procedure "do_delete_win32_file" line 23)
invoked from within
"do_delete_win32_file $fileName"
(file "C:/Users/0xjnml/AppData/Local/Temp/sqlite-test-2451249745/win32longpath.test" line 132)
invoked from within
"source C:/Users/0xjnml/AppData/Local/Temp/sqlite-test-2451249745/win32longpath.test"
invoked from within
"interp eval tinterp $script"
(procedure "slave_test_script" line 30)
invoked from within
"slave_test_script [list source $zFile] "
invoked from within
"time { slave_test_script [list source $zFile] }"
(procedure "slave_test_file" line 23)
invoked from within
"slave_test_file $file"
(procedure "run_tests" line 29)
invoked from within
"run_tests full -presql {} -files {shared3.test func7.test sysfault.test writecrash.test vacuum5.test func4.test tkt3731.test upfrom1.test vacuum2.test..."
("eval" body line 1)
invoked from within
"eval run_tests $suite $S $extra"
(procedure "main" line 33)
invoked from within
"main $argv"
(file "permutations.test" line 1238)
invoked from within
"source $argv0"
invoked from within
"if {[llength $argv]>=1} {
set argv0 [lindex $argv 0]
set argv [lrange $argv 1 end]
source $argv0
} else {
set line {}
while {![eof stdin]} {
if {$line..."
--- FAIL: TestTclTest (15333.08s)
tcl_test.go:133: exit status 1
FAIL
exit status 1
FAIL modernc.org/sqlite 15474.728s
E1006 22:25:43.319391 9060 builder_test.go:470] FAIL: exit status 1
wd "C:\\Users\\0xjnml\\go\\src\\modernc.org\\builder\\.exclude\\src\\modernc.org\\sqlite", <nil>
E1006 22:25:43.475328 9060 builder_test.go:577] FAIL testing modernc.org/sqlite
Since at least ffc4be29 the only failure on windows/amd64 was a memory leak, otherwise all tests passed. I tried to bisect this new failure and started with ffc4be29, for which we have a log in the linked #23 (closed) comment. It now fails, just with a less verbose output:
C:\Users\0xjnml\go\src\modernc.org\sqlite>git checkout ffc4be29
Updating files: 100% (58/58), done.
Previous HEAD position was 0c9a6ed Merge branch 'persistent_pragma_configs' into 'master'
HEAD is now at ffc4be2 update all targets but darwin/arm64 to SQLite 3.36, updates #23
C:\Users\0xjnml\go\src\modernc.org\sqlite>git log -1
commit ffc4be292a5a3d98a6ca95a65d551da81583ad26 (HEAD)
Author: Jan Mercl <0xjnml@gmail.com>
Date: Mon Jun 21 12:21:04 2021 +0200
update all targets but darwin/arm64 to SQLite 3.36, updates #23
C:\Users\0xjnml\go\src\modernc.org\sqlite>go test -v -timeout 24h -run Tcl -verbose 1 -suite win32longpath.test | tee log
test binary compiled for windows/amd64
=== RUN TestTclTest
win32longpath-1.0... Ok
win32longpath-1.1... Ok
win32longpath-1.2... Ok
win32longpath-1.3...
! win32longpath-1.3 expected: [1 {unable to open database file}]
! win32longpath-1.3 got: [0 {}]
win32longpath-1.4... Ok
win32longpath-1.5... Ok
win32longpath-1.6... Ok
win32longpath-1.7.1a... Ok
win32longpath-1.7.1b... Ok
win32longpath-1.7.1c... Ok
win32longpath-1.7.1d... Ok
win32longpath-1.7.1e... Ok
win32longpath-1.7.1f... Ok
^C
C:\Users\0xjnml\go\src\modernc.org\sqlite>
From the surviving log, produced by ffc4be29:
Log file created at: 2021/06/21 12:25:02
Running on machine: win64
Binary: Built with gc go1.16.5 for windows/amd64
Note the different Go version, go1.16.5
vs go1.17.1
. We need to test if this new bug/failure was introduced by the newer Go version or why it fails now and did not fail in win32longpath.test
then.