我正在一个地图/减少审查,我总是有reduce_overflow_error每次我运行视图,如果我在couchdb配置中设置reduce_limit = false,它工作,我想知道如果我改变这是否有负面影响配置设置?谢谢可以在couchdb配置中设置reduce_limit = false配置吗?
1
A
回答
1
设置reduce_limit=true
强制CouchDB控制每个减少步骤的减少输出的大小。如果字符串化JSON输出的缩减步骤的字符数超过200个字符和它比输入长两倍或更多,CouchDB的查询服务器将引发错误。两个数字,2个和200个字符,都是硬编码的。
由于reduce函数在SpiderMonkey实例中运行,只有64Mb RAM可用,所以默认情况下设置的限制看起来合理。理论上,减少必须折叠,而不是放弃所给的数据。
但是,在现实生活中,在所有情况下飞行都是非常困难的。您无法控制(再)减少步骤的块数。这意味着你可能会遇到这样的情况,当你输出某个特定块的字符长度超过两倍时,尽管其他块减少的时间要短得多。在这种情况下,如果设置了reduce_limit,那么即使是一个不舒服的块也会打破整个缩减。
因此,如果缩减器有时可以输出比收到的更多数据,那么取消设置reduce_limit可能会有所帮助。
常见大小写 - 将数组展开到对象中。想象一下,您会收到像[[1,2,3...70], [5,6,7...], ...]
这样的数组列表作为输入行。您想要以{key0:(sum of 0th elts), key1:(sum of 1st elts)...}
的方式汇总您的列表。
如果CouchDB决定向您发送1或2行的块,则会出现错误。原因很简单 - 对象键也计算结果长度。
可能(但很难实现)的负面影响是SpiderMonkey的实例不断重新启动/下降上RAM超过配额,试图处理还原步骤或整个减少时。重新启动SM是CPU和内存密集型和一般费用几百毫秒。
相关问题
- 1. 我可以在配置文件中设置GPS配置的更改吗?
- 2. 你可以在log4net配置中设置属性值吗?
- 3. 可以在Spring配置中配置两个DataSoure吗?
- 4. 可以编程设置java中的hibernate.cfg.xml文件配置吗?
- 5. 我可以以编程方式设置Mercurial配置选项吗?
- 6. 在application.ini中设置PHP配置设置
- 7. 在init.rb中设置配置
- 8. 在mrunit中设置配置
- 9. 您可以配置WCF使用的XmlWriter的默认设置吗?
- 10. 配置设置
- 11. 设置配置?
- 12. IIS 7配置 - 一切都可以通过web.config配置吗?
- 13. 我的iPhone可以配置两个配置文件吗?
- 14. 在JBoss中我可以配置一个“共享库”位置吗?
- 15. 我可以在web.config中放置Remoting配置吗?
- 16. Jmeter分配配置设置
- 17. 在FitNesse中可以覆盖根页面中配置的设置吗?
- 18. 可以在虚拟主机配置中读取.htaccess中设置的值吗?
- 19. 群集配置Couchdb 2.0
- 20. 我可以在MobileFirst 8适配器中设置AuthenticatedUser吗?
- 21. 是否可以在application.ini配置中设置Zend_Date选项?
- 22. 可以在web.config中配置客户端证书设置
- 23. Maven - 我可以在配置文件定义中引用配置文件ID吗?
- 24. Spree配置文件 - 设置可以在管理面板中设置的东西
- 25. 我可以在Eclipse Java项目运行配置中设置任意命令吗?
- 26. 我可以在UWP应用桌面扫描仪中配置设置吗?
- 27. Elasticsearch配置设置
- 28. config_test.yml设置:配置
- 29. 配置smtp设置