Details
-
Bug
-
Resolution: Works as Designed
-
Major - P3
-
None
-
None
-
None
-
None
Description
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
Attachments
Issue Links
- is related to
-
GODRIVER-2453 Mention that Session and Transaction types and functions are not goroutine safe in relevant documentation
-
- Closed
-