将提示与CountDocument一起使用时,MongoDB golang驱动程序不会返回无法识别的字段'hint'
因此,我使用官方的mongo驱动程序运行go将提示与CountDocument一起使用时,MongoDB golang驱动程序不会返回无法识别的字段'hint',mongodb,go,Mongodb,Go,因此,我使用官方的mongo驱动程序运行gogo.mongodb.org/mongo驱动程序,并在一个容器中运行mongodb v4。所有操作都可以正常工作,但当我尝试向CountDocument添加提示时,它失败了,错误为unrecognized field hint。我在以前的gh问题和jira线程中看到过这个错误,但在这些情况下,问题是人们使用的mongo版本早于3.6,但我使用的是v4,所以我无法找出问题所在 opts := &options.CountOptions{} opt
go.mongodb.org/mongo驱动程序,并在一个容器中运行mongodb v4。所有操作都可以正常工作,但当我尝试向CountDocument添加提示时,它失败了,错误为unrecognized field hint
。我在以前的gh问题和jira线程中看到过这个错误,但在这些情况下,问题是人们使用的mongo版本早于3.6,但我使用的是v4,所以我无法找出问题所在
opts := &options.CountOptions{}
opts.SetHint("client_1_created_at_1")
count, err := r.collection.CountDocuments(ctx, query, opts)
if err != nil {
return 0, err
}
return count, nil
MongoDB版本:4.0.6
Mongo驱动程序版本:Mongo go驱动程序中的1.0.1CountDocuments()
遵循Mongo shellCountDocuments()
实践,这是一个由$match
和$group
组成的集合。您将无法在聚合上使用提示
参见实现。SetHint()
旁注:请相信查询计划器,只要您有一个合适的索引,mongo查询计划器就会为您选择正确的索引。CountDocuments()
在mongo go中,驱动程序遵循mongo shellCountDocuments()
实践,这是$match
和$group
的聚合。您将无法在聚合上使用提示
参见实现。SetHint()
旁注:请相信query planner,只要您有一个合适的索引,mongo query planner就会为您选择正确的索引。嘿,您能制作一个SSCCE()并通过jira线程()发送给我们吗?请使用Driverey的主线程版本重新创建问题。您是否能够制作一个SSCCE()并通过jira线程()发送?请使用驱动程序的主线程版本重新创建问题