查询 CosmosDB 时处理此请求时发生未知服务器错误
Unknown server error occurred when processing this request when querying CosmosDB
我尝试了下面的查询,但出于某种原因我得到了 Unknown server error occurred when processing this request
。我对 mongodb 有点陌生,但在阅读 Mongodb shell 和 CosmosDB 的文档时,列出的所有运算符似乎都受支持,而且这在语法上看起来是正确的。
db.getCollection('transactions').aggregate(
[
{
$match:{
bdr_date: 20181031,
make: { $exists: false },
shard_key: '1249_2018-10',
time: { $gt: 2344 }
}
},
{
$group: {
total_sales: {
$sum: {
$multiply: [
"$sales",
"$units"
]
}
}
}
}
]
)
我的 CosmosDB 使用 MongoAPI 并包含一个名为 transactions
的集合,其中包含具有许多键的文档,但以下是重要的键:
{
"bdr_date" : INT(32),
"time" : INT(32),
"sales" : Double,
"units" : INT(32),
"shard_key" : String
}
在一些文档中还有一个名为 { "make": INT(32) }
的密钥,我们有一个脚本来填充数据漏洞。我只想要包含真实数据的文档,所以我使用 "make"
键过滤掉了文档。 bdr_date
是 yyyymmdd
格式,time
是 HHMM
格式。
除了未知的服务器错误异常之外,错误代码并没有真正说明什么,所以我很困惑我到底做错了什么。我缺少一些简单的东西吗?
如果您需要更多信息,我会尽力满足。感谢您的帮助!
在向 AskCosmosDB@microsoft.com 发送电子邮件后,显然存在一些错误,该错误将在未来修复,目前导致 Cosmos return 出现错误的错误消息。
就我而言,它最终变得很简单。我只是忘了将 _id
键放入 $group
运算符中。就我而言,使 _id: null
解决了问题。
db.getCollection('transactions').aggregate(
[
{
$match:{
bdr_date: 20181031,
make: { $exists: false },
shard_key: '1249_2018-10',
time: { $gt: 2344 }
}
},
{
$group: {
_id: null,
total_sales: {
$sum: {
$multiply: [
"$sales",
"$units"
]
}
}
}
}
]
)
我尝试了下面的查询,但出于某种原因我得到了 Unknown server error occurred when processing this request
。我对 mongodb 有点陌生,但在阅读 Mongodb shell 和 CosmosDB 的文档时,列出的所有运算符似乎都受支持,而且这在语法上看起来是正确的。
db.getCollection('transactions').aggregate(
[
{
$match:{
bdr_date: 20181031,
make: { $exists: false },
shard_key: '1249_2018-10',
time: { $gt: 2344 }
}
},
{
$group: {
total_sales: {
$sum: {
$multiply: [
"$sales",
"$units"
]
}
}
}
}
]
)
我的 CosmosDB 使用 MongoAPI 并包含一个名为 transactions
的集合,其中包含具有许多键的文档,但以下是重要的键:
{
"bdr_date" : INT(32),
"time" : INT(32),
"sales" : Double,
"units" : INT(32),
"shard_key" : String
}
在一些文档中还有一个名为 { "make": INT(32) }
的密钥,我们有一个脚本来填充数据漏洞。我只想要包含真实数据的文档,所以我使用 "make"
键过滤掉了文档。 bdr_date
是 yyyymmdd
格式,time
是 HHMM
格式。
除了未知的服务器错误异常之外,错误代码并没有真正说明什么,所以我很困惑我到底做错了什么。我缺少一些简单的东西吗?
如果您需要更多信息,我会尽力满足。感谢您的帮助!
在向 AskCosmosDB@microsoft.com 发送电子邮件后,显然存在一些错误,该错误将在未来修复,目前导致 Cosmos return 出现错误的错误消息。
就我而言,它最终变得很简单。我只是忘了将 _id
键放入 $group
运算符中。就我而言,使 _id: null
解决了问题。
db.getCollection('transactions').aggregate(
[
{
$match:{
bdr_date: 20181031,
make: { $exists: false },
shard_key: '1249_2018-10',
time: { $gt: 2344 }
}
},
{
$group: {
_id: null,
total_sales: {
$sum: {
$multiply: [
"$sales",
"$units"
]
}
}
}
}
]
)