Releases: denisenkom/go-mssqldb
Releases · denisenkom/go-mssqldb
April 2021
Workaround for Go 1.16 (#642) * Fix Go1.16 * Add more tests * Add build tag * Add Go 1.16 to appveyor.yml
First release
Disable logging in go routine Logging was causing data race error. Here is one example of such error (from https://ci.appveyor.com/project/denisenkom/go-mssqldb/builds/36105319/job/qrymmer7mnvkbv2p): ``` 2020/11/03 03:32:09 initiating response reading 2020/11/03 03:32:09 got token tokenLoginAck 2020/11/03 03:32:09 got token tokenEnvChange 2020/11/03 03:32:09 got token tokenDone 2020/11/03 03:32:09 got DONE or DONEPROC status=0 2020/11/03 03:32:09 response finished 2020/11/03 03:32:09 SET XACT_ABORT ON; -- 16384 SET ANSI_NULLS ON; -- 32 SET ARITHIGNORE ON; -- 128 2020/11/03 03:32:09 initiating response reading 2020/11/03 03:32:09 got token tokenEnvChange 2020/11/03 03:32:09 got token tokenDone 2020/11/03 03:32:09 got DONE or DONEPROC status=1 2020/11/03 03:32:09 got token tokenDone 2020/11/03 03:32:09 got DONE or DONEPROC status=1 2020/11/03 03:32:09 got token tokenDone 2020/11/03 03:32:09 got DONE or DONEPROC status=0 2020/11/03 03:32:09 response finished 2020/11/03 03:32:09 select Options = @@OPTIONS; 2020/11/03 03:32:09 initiating response reading 2020/11/03 03:32:09 got token tokenColMetadata 2020/11/03 03:32:09 got token tokenRow 2020/11/03 03:32:09 got token tokenDone 2020/11/03 03:32:09 got DONE or DONEPROC status=16 2020/11/03 03:32:09 (1 row(s) affected) 2020/11/03 03:32:09 response finished 2020/11/03 03:32:09 SET XACT_ABORT ON; -- 16384 SET ANSI_NULLS ON; -- 32 SET ARITHIGNORE ON; -- 128 2020/11/03 03:32:09 initiating response reading 2020/11/03 03:32:09 got token tokenEnvChange 2020/11/03 03:32:09 got token tokenDone 2020/11/03 03:32:09 got DONE or DONEPROC status=1 2020/11/03 03:32:09 got token tokenDone 2020/11/03 03:32:09 got DONE or DONEPROC status=1 2020/11/03 03:32:09 got token tokenDone 2020/11/03 03:32:09 got DONE or DONEPROC status=0 2020/11/03 03:32:09 response finished ================== WARNING: DATA RACE Read at 0x00c00033a043 by goroutine 55: testing.(*common).logDepth() c:/go113/src/testing/testing.go:665 +0xa8 testing.(*common).Log() c:/go113/src/testing/testing.go:658 +0x7e github.com/denisenkom/go-mssqldb.testLogger.Println() C:/gopath/src/github.com/denisenkom/go-mssqldb/tds_test.go:224 +0x5f github.com/denisenkom/go-mssqldb.optionalLogger.Println() C:/gopath/src/github.com/denisenkom/go-mssqldb/log.go:26 +0xa1 github.com/denisenkom/go-mssqldb.(*parseResp).dlog() C:/gopath/src/github.com/denisenkom/go-mssqldb/token.go:708 +0x176 github.com/denisenkom/go-mssqldb.(*parseResp).iter() C:/gopath/src/github.com/denisenkom/go-mssqldb/token.go:725 +0xcc6 github.com/denisenkom/go-mssqldb.processResponse() C:/gopath/src/github.com/denisenkom/go-mssqldb/token.go:813 +0x17c Previous write at 0x00c00033a043 by goroutine 40: testing.tRunner.func1() c:/go113/src/testing/testing.go:900 +0x35a testing.tRunner() c:/go113/src/testing/testing.go:913 +0x1c2 Goroutine 55 (running) created at: github.com/denisenkom/go-mssqldb.(*Stmt).processQueryResponse() C:/gopath/src/github.com/denisenkom/go-mssqldb/mssql.go:600 +0x1a5 github.com/denisenkom/go-mssqldb.(*Stmt).queryContext() C:/gopath/src/github.com/denisenkom/go-mssqldb/mssql.go:594 +0x1c2 github.com/denisenkom/go-mssqldb.(*Stmt).Query() C:/gopath/src/github.com/denisenkom/go-mssqldb/mssql.go:584 +0xbe github.com/denisenkom/go-mssqldb.TestQueryCancelLowLevel() C:/gopath/src/github.com/denisenkom/go-mssqldb/queries_test.go:1805 +0x54c testing.tRunner() c:/go113/src/testing/testing.go:909 +0x1a0 Goroutine 40 (running) created at: testing.(*T).Run() c:/go113/src/testing/testing.go:960 +0x658 testing.runTests.func1() c:/go113/src/testing/testing.go:1202 +0xad testing.tRunner() c:/go113/src/testing/testing.go:909 +0x1a0 testing.runTests() c:/go113/src/testing/testing.go:1200 +0x528 testing.(*M).Run() c:/go113/src/testing/testing.go:1117 +0x306 main.main() _testmain.go:362 +0x33e ================== 2020/11/03 03:32:18 [{Hello} {World} {TVP}] FAIL coverage: 78.2% of statements exit status 1 ``` Testing data race Testing data race Testing data race Testing data race Testing data race add comment