nicolas riesch
nicolas riesch
My machine is Linux Mint in VirtualBox, on Windows 7 host: Linux nico-Qiana-Xfce 3.13.0-24-generic #47-Ubuntu SMP Fri May 2 23:30:00 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux go version go1.3.2 linux/amd64...
I have run the program again, with the following flags in sqlite.go: ``` //#cgo CFLAGS: -DNDEBUG=1 #cgo CFLAGS: -DSQLITE_DEBUG=1 #cgo CFLAGS: -DSQLITE_MEMDEBUG=1 SQLITE_MEMDEBUG does memory checking similar to Valgrind (in...
@rwcarlsen If you have time, can you change the following lines in $GOPATH/src/github.com/mxk/go-sqlite/sqlite3/sqlite3.go, and run again your program ? ``` //#cgo CFLAGS: -DNDEBUG=1 #cgo CFLAGS: -DSQLITE_DEBUG=1 #cgo CFLAGS: -DSQLITE_MEMDEBUG=1 #cgo...
Forget my previous messages, I think the cause is the Stmt finalizer. It runs 4 times in the program. More on this tomorrow...
I can reproduce the error. It is a race condition between Stmt finalizer dedicated goroutine and the main goroutine. If they call sqlite3DbMallocRaw() or sqlite3DbFree() at the same time (on...
Hi, Maxim ! > I didn't consider the fact that they could run in parallel If you did not, it means that very few people do. It is the proof...
Besides, if the user reads only a few records from a table, and let the Stmt go out of scope, the lock on the database will not be released until...