MONGODB 2.6.8 的一个BUG [Assertion: 13548:BufBuilder attempted to grow() to 134217728 bytes, past the ]
环境:mongoDB2.6.8 集群,
下午突然发现4个从节点,挂了3个,全都都出现以下提示:
2016-03-11T16:53:02.483+0800 [conn312773] Assertion: 13548:BufBuilder attempted to grow() to 134217728 bytes, past the 64MB limit.
经分析, [conn312773] 连接前面的查询 全是统计分析类的查询,后跟开发部确认。
他们自己认为是以下查询 有问题。
这里不太常用到的是: item:{$push:"$$ROOT"}
这个功能是这样的: 查询 到的数据,把所有的数据明细表用$push 方式到item 再返回,
这样处理好处是在一个页面中,前面有汇总数据,后面还有对应的明细。
但缺点是如果明细值太大,那么就触发了上面的BUG.在官方BUG说明中是说在版本2.4.6就已解决了。但在2.6.8我们还
是遇到,也有可能很少这样用的原因吧。
db.getCollection('PInfo').aggregate([
{
$match:{MID:86}
},
{
$group : {
_id : { PID : "$PID"},
sumcount : { $sum : 1 },
item:{$push:"$$ROOT"}
}
}
])
我们的解决方法:
把item 中$push 的值从总条记录,修改到只返回某几个字段(尽量少,同时不要返回子文档及数组,因为这两种类型很难预见有多大)
再把查询条件优化成最小,每次只查询少量数据。从而减少返回的数据量。
MONGODB 2.6.8 的一个BUG [Assertion: 13548:BufBuilder attempted to grow() to 134217728 bytes, past the ]相关推荐
- 软件测试培训分享:做软件测试工作如何清楚的描述一个bug
一名合格的软件测试工程师是需要清楚的交代自己的工作任务的,必须要清楚的告诉技术员出现的bug,那么做软件测试工作如何清楚的描述一个bug呢?来看看下面的详细介绍. 软件测试培训分享:做软件测试工作如何 ...
- EnterLib PIAB又一个BUG?
在<这是EnterLib PIAB的BUG吗?>一文中我们讨论了PIAB关于抽象基类的BUG,今天又发现了一个新的问题.问题的起因源于<IoC+AOP的简单实现>这篇文章,因为 ...
- 一个Bug能有多大影响:亏损30亿、致6人死亡、甚至差点毁灭世界...
欢迎关注方志朋的博客,回复"666"获面试宝典 作者:博雯 来源:量子位(QbitAI) 一个Bug就地蒸发5亿美元: 软件设计层面出Bug致6人死亡: DeBug不成功直接世 ...
- 从一个Bug开始,重新认识一个强大的 Gson
点击上方"方志朋",选择"置顶公众号" 技术文章第一时间送达! 作者:Mafly, 地址:www.cnblogs.com/mafly/p/gson.html 从 ...
- 使用React、Node.js、MongoDB、Socket.IO开发一个角色投票应用的学习过程(一)
这几篇都是我原来首发在 segmentfault 上的地址:https://segmentfault.com/a/1190000005040834 突然想起来我这个博客冷落了好多年了,也该更新一下,呵 ...
- 关于MySQL count(distinct) 逻辑的另一个bug
背景 上一篇博文(链接)介绍了count distinct的一个bug.解决完以后发现客户的SQL语句仍然返回错误结果(0), 再查原因,发现了另外一个bug.也就是说,这个SQL语 ...
- sdcms的一个bug,总是提示,该文件不允许被上传
之前通过sdcms做过一个网站,最近在上传文件时,总是提示,该文件不允许被上传.于是跟踪了一下,发现了一个bug 上传附近是通过admin目录下的Sdcms_Editor_Up.asp来提交的,当文件 ...
- CSSFriendlyAdapter 的一个Bug
因为要使用树控件的客户端脚本功能,发行asp.net 2.0中默认提供的树控件,并没有开放这方面的接口.要实现客户端的编程还是很有难度的. 查找了一些第三方的控件,不是需要收费,就是功能想对较弱. 后 ...
- QQ超市模拟排配2D版1.13 (XNA4.0) (修正双格货架移动的一个bug和3-5地图)
抱歉,更新了一个地图-- 下载地址:(版本过期了,请下新版) 1.13:更新日期:2012-3-22 更新3店5口地图错误问题.启动程序前请手动删除旧版地图数据. 地址:C:\(我的文档路径)\Sav ...
最新文章
- 多任务的介绍(并发、并行)
- golang变量作用域
- [Qt入门]模态和非模态对话框创建
- 开启admin$共享
- Java多线程——Condition条件
- 【CCNA学习实录】二进制 十进制 十六进制 VLSM
- 《Yii2 By Example》第2章:创建一个简单的新闻阅读器
- BIM族库下载——10套知名地产Revit样板文件
- Excel的上传下载
- H3C Comware V3 端口聚合
- javaScript视频弹幕
- 怎么用计算机测出来体脂,如何测自己的体脂率?
- 某马python day03
- html语言制作表格模板,十个最简单实用的Table设计模板
- 【黄啊码】thinkphp sql wherein的排序问题|tp不能按whereIn排序?
- co作为前缀的意思_品牌故事之Tiffany Co
- 国产化DM达梦数据库 - 用户状态查询、锁定与解锁,“登录失败次数超过限制”问题解决
- Java中的线程状态
- 23-25-35岁北漂者的未来该如何规划?~转
- System.Web.Caching.Cache
热门文章
- Oralce中日期格式
- POJ 1269 Intersecting Lines(求直线交点)
- Linux实用命令总结
- 1.4 isAlive()方法
- Linux内核启动过程概述
- Qt中QtTableWidget的使用
- VC++基于APR实现禁止某个业务(开发行为控制软件用得着,例如上班禁止上QQ)...
- ScottGu之博客翻译-LINQ to SQL第四部分,更新数据库 LINQ to SQL (Part 4 - Updating our Database)...
- 代码练习中的bug及修改方法
- C#读取资源文件的两种方法及保存资源文件到本地