为什么 CouchDB _dbs.couch 在 purging/compacting DB 时保持增长?

why does CouchDBs _dbs.couch keep growing when purging/compacting DBs?

设置:

场景:

问题:

文件var/lib/couchdb/_dbs.couch一直在增长,从不缩小。上次我把它单独放了三个星期,它增长到 37 GB。 Fauxten 表明,CouchDB 最多只包含 60 个文档,但该文件仍在不断增长,直到填满所有 space 可用

我尝试了什么:

无论我做什么,我总是得到相同的结果:_dbs.couch 不断增长。我也无法真正找出该文件的用途。谷歌搜索特定文件名只会产生两页搜索结果,none 其中是特定的。

我目前唯一能做的就是不时地手动删除这个文件,然后重新启动 docker-container,这会删除我所有的数据库,但这不是节点的问题-应用程序很快就会重新创建它们。

_dbs 数据库是元数据库。它记录了集群数据库所有分片的位置,但由于它也是一个 couchdb 数据库(虽然不是分片数据库),它也需要不时压缩。

尝试; curl localhost:5986/_dbs/_compact -XPOST -Hcontent-type:application/json

您可以启用压缩守护进程来为您执行此操作,我们在最近的 2.1.0 版本中默认启用它。

将此添加到 local.ini 文件的末尾并重新启动 couchdb;

[compactions] _default = [{db_fragmentation, "70%"}, {view_fragmentation, "60%"}]