Description
Steps to reproduce:
- Setup a 2 node cluster: 1kv+n1ql, 1 index node
- Create 10 collections on default bucket and default scope
- Create 10 GSI indexes, one on each of these collections
- Keep the query-ui throughout the process
- Restart cbq-engine process
Every 20 seconds, we can see 10 calls to "/pools/default/bs/" endpoint from cbq-engine.
Tracing back in the code, I think this call seems to be happening because of the following code:
// FTS indexer
|
coll.ftsIndexer, qerr = ftsclient.NewFTSIndexer2(store.URL(), namespace.name, coll.bucket.name, coll.scope.id, coll.id)
|
if qerr != nil { |
logging.Warnf("Error loading FTS indexes for keyspace %s. Error %v", coll.id, qerr) |
} else { |
coll.ftsIndexer.SetConnectionSecurityConfig(connSecConfig)
|
}
|
The query node seems to instantiate an FTS client object even if there is no FTS service in the cluster and this some how is querying the bucket streaming endpoint. After commenting the above code, I do not see the calls to bucket streaming endpoint. Also, if the query-ui is not open when cbq-engine restarts, I do not see this issue.
Thanks to Steve Watanabe for identifying this issue
Attachments
Issue Links
- blocks
-
MB-35966 Queries can temporarily fail when node-to-node encryption is set to "all" during rebalance
- Open