-
Type:
Bug
-
Resolution: Works as Designed
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
The Realm team has noticed some data race errors in QA with the mongo-go-driver. We haven't been able to reproduce the issue but it seems to be occurring during an update.
Version: v1.9.0-baas.1 (the driver code should not deviate much from the main 1.9.0 driver in regards to the code in the below stack trace)
Link to location of data race
Stack trace:
WARNING: DATA RACE
Write at 0x00c02ce5aa04 by goroutine 941:
go.mongodb.org/mongo-driver/mongo.(*sessionImpl).AbortTransaction()
/root/go/pkg/mod/github.com/mongodb-forks/mongo-go-driver@v1.9.0-baas.1/mongo/session.go:276 +0x268
github.com/10gen/baas/service/services/mongodb.(*clientSession).abortTransaction()
/data/mci/aa012eacb13ba2b04d14186538014218/baas/service/services/mongodb/client_session.go:131 +0xfe
github.com/10gen/baas/service/services/mongodb.(*clientSession).abortTransaction-fm()
/data/mci/aa012eacb13ba2b04d14186538014218/baas/service/services/mongodb/client_session.go:128 +0x6d
github.com/10gen/baas/function/execution/vm.createAsyncWork.func1()
/data/mci/aa012eacb13ba2b04d14186538014218/baas/function/execution/vm/context.go:851 +0x307
github.com/10gen/baas/function/execution/vm.(*eventLoop).processAsyncWorkQueue.func1.1.1()
/data/mci/aa012eacb13ba2b04d14186538014218/baas/function/execution/vm/event_loop.go:490 +0xd8
github.com/10gen/baas/function/execution/vm.(*eventLoop).processAsyncWorkQueue.func1.1()
/data/mci/aa012eacb13ba2b04d14186538014218/baas/function/execution/vm/event_loop.go:492 +0xc4
github.com/10gen/baas/function/execution/vm.(*eventLoop).processAsyncWorkQueue.func1()
/data/mci/aa012eacb13ba2b04d14186538014218/baas/function/execution/vm/event_loop.go:529 +0x249
github.com/10gen/baas/utils.PanicCapturingFuncWithCallback()
/data/mci/aa012eacb13ba2b04d14186538014218/baas/utils/utils.go:216 +0x77
github.com/10gen/baas/utils.PanicCapturingFunc()
/data/mci/aa012eacb13ba2b04d14186538014218/baas/utils/utils.go:188 +0x30
github.com/10gen/baas/utils.PanicCapturingGo·dwrap·38()
/data/mci/aa012eacb13ba2b04d14186538014218/baas/utils/utils.go:222 +0x39
Previous read at 0x00c02ce5aa04 by goroutine 1110:
go.mongodb.org/mongo-driver/x/mongo/driver.Operation.retryable()
/root/go/pkg/mod/github.com/mongodb-forks/mongo-go-driver@v1.9.0-baas.1/x/mongo/driver/operation.go:711 +0x8e
go.mongodb.org/mongo-driver/x/mongo/driver.Operation.Execute()
/root/go/pkg/mod/github.com/mongodb-forks/mongo-go-driver@v1.9.0-baas.1/x/mongo/driver/operation.go:394 +0x65a
go.mongodb.org/mongo-driver/x/mongo/driver/operation.(*Update).Execute()
/root/go/pkg/mod/github.com/mongodb-forks/mongo-go-driver@v1.9.0-baas.1/x/mongo/driver/operation/update.go:160 +0x52e
go.mongodb.org/mongo-driver/mongo.(*Collection).updateOrReplace()
/root/go/pkg/mod/github.com/mongodb-forks/mongo-go-driver@v1.9.0-baas.1/mongo/collection.go:576 +0x1405
go.mongodb.org/mongo-driver/mongo.(*Collection).UpdateOne()
/root/go/pkg/mod/github.com/mongodb-forks/mongo-go-driver@v1.9.0-baas.1/mongo/collection.go:644 +0x197
github.com/10gen/baas/service/services/mongodb.(*mongoCollection).UpdateOne.func1()
/data/mci/aa012eacb13ba2b04d14186538014218/baas/service/services/mongodb/collection.go:104 +0xf5
Note this issue is coming from charts apps created for e2e testing. Charts team hasn't noticed any unexpected errors on their end so the failed request might be expected. However, the data race seems unexpected.
I will try to follow up with more info if I can reproduce the issue
- is related to
-
GODRIVER-2453 Mention that Session and Transaction types and functions are not goroutine safe in relevant documentation
-
- Closed
-