Details
-
Bug
-
Resolution: Fixed
-
Major
-
None
-
4.0.0
-
Security Level: Public
-
None
-
Local Developer MacBook
-
Untriaged
-
Yes
Description
During functional testing, discover that a lot of go-routines got spawn. The test spawn a lot of GsiClient repeatedly. Need to check if these go-rountines are cleaned up properly. In production, there should be one GsiClient per cbq-engine process, so this should not be a production issue.
goroutine 1586 [select, 5 minutes]:
net/http.(*persistConn).writeLoop(0xc20831f4a0)
/usr/local/go/src/pkg/net/http/transport.go:885 +0x38f
created by net/http.(*Transport).dialConn
/usr/local/go/src/pkg/net/http/transport.go:601 +0x957
goroutine 1612 [chan send, 3 minutes]:
github.com/couchbase/indexing/secondary/common.*ClusterInfoCache.(github.com/couchbase/indexing/secondary/common.nodeServicesCallback)·fm(0x420, 0xc215ab7200, 0x2, 0x4, 0x0, 0x0, 0x0)
/opt/build/goproj/src/github.com/couchbase/indexing/secondary/common/cluster_info.go:122 +0xbc
github.com/couchbase/indexing/secondary/dcp.func·022(0xc20ea88fc0, 0x1a6, 0x1a6, 0x0, 0x0, 0x0)
/opt/build/goproj/src/github.com/couchbase/indexing/secondary/dcp/pools.go:347 +0xc9
github.com/couchbase/indexing/secondary/dcp.func·021()
/opt/build/goproj/src/github.com/couchbase/indexing/secondary/dcp/pools.go:328 +0xd5
created by github.com/couchbase/indexing/secondary/dcp.notificationIterHelper
/opt/build/goproj/src/github.com/couchbase/indexing/secondary/dcp/pools.go:334 +0x68d
goroutine 1583 [chan receive, 5 minutes]:
github.com/couchbase/indexing/secondary/queryport/client.(*metadataClient).watchClusterChanges(0xc2164ffa90, 0xc2080276c0, 0xe)
/opt/build/goproj/src/github.com/couchbase/indexing/secondary/queryport/client/meta_client.go:415 +0x4f4
created by github.com/couchbase/indexing/secondary/queryport/client.newMetaBridgeClient
/opt/build/goproj/src/github.com/couchbase/indexing/secondary/queryport/client/meta_client.go:53 +0x3c6
goroutine 1597 [select, 3 minutes]:
net/http.(*persistConn).readLoop(0xc211f658c0)
/usr/local/go/src/pkg/net/http/transport.go:868 +0x829
created by net/http.(*Transport).dialConn
/usr/local/go/src/pkg/net/http/transport.go:600 +0x93f