=== RUN TestStoreConcurrent
--- FAIL: TestStoreConcurrent (3.38s)
test.go:74: invalid character '\x00' looking for beginning of value
test.go:74: invalid character '\x00' looking for beginning of value
test.go:74: invalid character '\x00' looking for beginning of value
FAIL
coverage: 81.1% of statements
FAIL github.com/philippgille/gokv/bolt 3.420s
=== RUN TestStoreConcurrent
unexpected fault address 0x7f361ca600ef
fatal error: fault
[signal SIGSEGV: segmentation violation code=0x1 addr=0x7f361ca600ef pc=0x5c2444]
goroutine 25 [running]:
runtime.throw(0x627b33, 0x5)
/home/travis/.gimme/versions/go1.10.linux.amd64/src/runtime/panic.go:619 +0x81 fp=0xc420053c48 sp=0xc420053c28 pc=0x453861
runtime.sigpanic()
/home/travis/.gimme/versions/go1.10.linux.amd64/src/runtime/signal_unix.go:395 +0x211 fp=0xc420053c98 sp=0xc420053c48 pc=0x468cf1
encoding/json.checkValid(0x7f361ca600ef, 0xa, 0xa, 0xc420192260, 0x631b60, 0xc420053d70)
/home/travis/.gimme/versions/go1.10.linux.amd64/src/encoding/json/scanner.go:27 +0x144 fp=0xc420053d00 sp=0xc420053c98 pc=0x5c2444
encoding/json.Unmarshal(0x7f361ca600ef, 0xa, 0xa, 0x5e34e0, 0xc42002c860, 0xc4200c5500, 0x0)
/home/travis/.gimme/versions/go1.10.linux.amd64/src/encoding/json/decode.go:102 +0xbd fp=0xc420053d70 sp=0xc420053d00 pc=0x5addfd
github.com/philippgille/gokv/util.FromJSON(0x7f361ca600ef, 0xa, 0xa, 0x5e34e0, 0xc42002c860, 0x0, 0xc42002c860)
/home/travis/gopath/src/github.com/philippgille/gokv/util/util.go:12 +0x65 fp=0xc420053dc8 sp=0xc420053d70 pc=0x5c8e25
github.com/philippgille/gokv/bolt.Store.Get(0xc4200e0000, 0x627f2d, 0x7, 0x631832, 0x1, 0x5e34e0, 0xc42002c860, 0xc420053ee8, 0x437b08, 0x10)
/home/travis/gopath/src/github.com/philippgille/gokv/bolt/bolt.go:55 +0x203 fp=0xc420053e80 sp=0xc420053dc8 pc=0x5c9423
github.com/philippgille/gokv/bolt.(*Store).Get(0xc4200f21e0, 0x631832, 0x1, 0x5e34e0, 0xc42002c860, 0x0, 0x0, 0x0)
<autogenerated>:1 +0xb3 fp=0xc420053ef8 sp=0xc420053e80 pc=0x5ca403
github.com/philippgille/gokv/test.InteractWithStore(0x646980, 0xc4200f21e0, 0x631832, 0x1, 0xc4200d6000, 0xc4200da130)
/home/travis/gopath/src/github.com/philippgille/gokv/test/test.go:72 +0x297 fp=0xc420053fb0 sp=0xc420053ef8 pc=0x5cc9a7
runtime.goexit()
/home/travis/.gimme/versions/go1.10.linux.amd64/src/runtime/asm_amd64.s:2361 +0x1 fp=0xc420053fb8 sp=0xc420053fb0 pc=0x4837f1
created by github.com/philippgille/gokv/bolt_test.TestStoreConcurrent
/home/travis/gopath/src/github.com/philippgille/gokv/bolt/bolt_test.go:44 +0x241
[...]
goroutine 244 [runnable]:
github.com/philippgille/gokv/test.InteractWithStore(0x646980, 0xc42000de20, 0xc420018bc9, 0x3, 0xc4200d6000, 0xc4200da130)
/home/travis/gopath/src/github.com/philippgille/gokv/test/test.go:58
created by github.com/philippgille/gokv/bolt_test.TestStoreConcurrent
/home/travis/gopath/src/github.com/philippgille/gokv/bolt/bolt_test.go:44 +0x241
FAIL github.com/philippgille/gokv/bolt 0.089s
=== RUN TestStoreConcurrent
--- FAIL: TestStoreConcurrent (2.76s)
test.go:74: invalid character '\x01' looking for beginning of value
FAIL
coverage: 81.1% of statements
FAIL github.com/philippgille/gokv/bolt 2.791s
var data []byte
c.db.View(func(tx *bolt.Tx) error {
b := tx.Bucket([]byte(c.bucketName))
data = b.Get([]byte(k))
// [...]
return nil
})
// ... continue to work with data
So this could very well be the reason for the errors we see in the Travis CI log.