$sample stage could not find a non-duplicate document after 100 while using a random cursor
栏目:
mongoose教程
发布时间:2022-02-08
前言
www.tides.cn 项目有一段代码,从某个集合中随机取 10 条数据,当该集合的数据小于等于 100 条时,一切正常。但是当该集合的数据大于 100 条时,就会报下述错误信息:
MongoError in /
$sample stage could not find a non-duplicate document after 100 while using a random cursor. This is likely a sporadic failure, please try again. (code: 28799)
随机取 10 条数据的代码片段
tags.aggregate([{
$sample: {
10,
},
}]);
解决方案
目前还没找到有效的解决方法,暂时注释掉报错的这段代码(暂时这段代码可有可无)。
看到有些网友说在自己的 mac 上不报错,上线后 linux 服务器报错了,其实这只是表象,根源是数据量不一致引起的。
本文地址:https://www.tides.cn/p_mongoose-sample-stage-could-not-find-a-non-duplicate-document-after-100-while-using-a-random-cursor