Details
-
Bug
-
Resolution: Fixed
-
Major
-
6.6.0, Cheshire-Cat
-
Untriaged
-
1
-
Unknown
Description
N1QL/FTS use grpc version 1.17.
There seems to be a leak within grpc's resetTransport as pointed out here -
- https://github.com/grpc/grpc-go/issues/3667
- https://github.com/etcd-io/etcd/issues/11371
- https://github.com/grpc/grpc-go/issues/2976
which is addressed by https://github.com/grpc/grpc-go/pull/2985 for version 1.24
Consider upgrading grpc within these projects to v1.24.0?
- https://github.com/couchbase/cbft
- https://github.com/couchbase/cbftx
- https://github.com/couchbase/query
- https://github.com/couchbase/n1fty
The leak is coming from context.WithCancel as pointed out here: https://github.com/grpc/grpc-go/issues/2976.
Setting a timeout with context is a workaround for this - by setting a deadline for the datastore.IndexConnection which is handed to n1fty's Search(..). But WithTimeout for context was introduced in 7.0, so this is not a viable workaround for older builds.