我正在使用Spring数据mongodb库来访问mongodb。
当前,我需要创建一个测试以检查查询是否正在使用索引扫描策略。
进入我的外壳:
> db.reference.find({"metadata.values": {"credentials.password": "ctti"} }).explain();
{ ...
"winningPlan" : {
"stage" : "FETCH",
"inputStage" : {
"stage" : "IXSCAN",
"keyPattern" : {
"metadata.values" : 1
},
"indexName" : "metadata.values_1",
"isMultiKey" : true,
...
我想将此信息添加到我的Java代码中,以便检查.stage = IXSCAN
我尝试过:
this.mongoTemplate.getCollection("collname").find(query.getQueryObject());
它返回一个FindIterable<TDocument>
,但没有任何explain
方法。
有什么想法吗? 有什么想法吗?