[mongodb执行汇总时出错

问题描述 投票:0回答:1

非常感谢您的帮助和对此的评论。我一直在运行mongodb,没有任何问题。

我正在做一个大的聚合,一段时间后出现以下错误:

com.mongodb.MongoCommandException:命令失败,错误8(UnknownError):上的'assertion src / mongo / db / pipeline / value.cpp:1365'服务器mongo1:27017。完整的响应为{“ ok”:0.0,“ errmsg”:“断言src / mongo / db / pipeline / value.cpp:1365”,“代码”:8,“ codeName”:“ UnknownError”}

正在执行的查询,类似于:

db.getCollection('saft_documents').aggregate([
    { 
       $match:{invoiceDate: {$gte: new ISODate("2019-01-01T00:00:00.000Z"), $lte: new ISODate("2019-01-07T00:00:00.000Z")}}
    },
    {
       $unwind:"$lines"
    },
    {
       $group:{
               _id:{taxEntity:"$taxEntity",invoiceType:"$invoiceType",invoiceStatus:"$invoiceStatus", productCode:"$lines.productCode",productDesc:"$lines.productDescription"},
               numberOfLines:{$sum:1},
               quantity:{$sum:"$lines.quantity"},
               creditAmount:{$sum:"$lines.creditAmount"},
               debitAmount:{$sum:"$lines.debitAmount"},
               taxPayableRec:{ 
                 $sum:{  $cond: [ 
                         {$ifNull: ['$lines.taxBase', false]},
                         {$multiply:["$lines.taxBase",{$divide:["$lines.taxPercentage",100]}]}, 
                         {$multiply:[{$subtract:["$lines.creditAmount","$lines.debitAmount"]} ,{$divide:["$lines.taxPercentage",100]}]}
                     ] }
                  }
           }
    },
    {
       $project:{
              _id:0,
              taxEntity: "$_id.taxEntity",
              invoiceType: "$_id.invoiceType",
              invoiceStatus: "$_id.invoiceStatus",
              productCode: "$_id.productCode",
              productDesc: "$_id.productDesc",
              numberOfLines:1,
              quantity:1,
              creditAmount:1,
              debitAmount:1,
              taxPayableRec:1,
              netTotal: {$subtract:["$creditAmount","$debitAmount"]},
              grossTotal: {$add:[{$subtract:["$creditAmount","$debitAmount"]},"$taxPayableRec"]}
           }  
    }

// uncomment to show the number of groups generated    
//     ,{
//     $group:{
//         _id:null,
//         count:{$sum:1}
//         }}

 ],{ allowDiskUse: true })

您是否已经遇到此错误?谢谢

mongodb aggregation
1个回答
0
投票

我遇到同样的问题。您解决了吗?我的MongoDB版本是4.2.1。

© www.soinside.com 2019 - 2024. All rights reserved.