首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >封顶集合mongodb

封顶集合mongodb
EN

Stack Overflow用户
提问于 2011-01-11 16:24:24
回答 1查看 823关注 0票数 1

我对mongoDB有意见。目前我正在使用Ruby mongodb驱动程序,有一些奇怪的事情正在发生:

我需要在上限集合中插入20个文档,但当我编写以下代码时,它只插入了3个文档,并且我无法了解发生了什么:

代码语言:javascript
复制
coll = db.create_collection("test",:capped => true, :max=>20)
1024.times{@pad_string +=" "}

20.times{coll.insert({
             :HostName    => @hostname,
             :CommandLine => @cmdline,
             :Pid         => "1111",
             :BlockName   => @blockname,
             :ExitCode    => 0,
             :StartTime   => Time.now,
             :EndTime     => Time.utc(2000,"jan",1,00,00,00),
             :StdErr      => @pad_string,
             :Stdout      => @pad_string}
         )}

实际上,重点是我插入的@pad_string有1024个预先分配的空间。只要我在插入1024.x{@pad_string +=“"}之前执行此操作,它最多只能插入3个文档。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-01-15 04:23:07

当你根据对象的数量来限制一个集合时,你也必须根据大小来限制它--我想知道ruby驱动程序发送下来的大小是多少。

试试这个:

coll =db.create_collection(“=>”,:capped => true,:size=>100000,:max=>20)

然后将大小调整为适合您的大小(以字节为单位)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4655566

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档