Couchdb 删除ID为空的文档

Couchdb 删除ID为空的文档,couchdb,Couchdb,我有一个CouchDB数据库正在生产中。其中一个文档已被编辑(在Futon中由其他开发人员编辑)。 它丢了它的ID(别问我他是怎么做到的) 因此,现在文档的id是一个空字符串,因此无法通过Futon进行编辑或删除。 有没有办法侵入CouchDB删除该文档?我没有尝试过,但应该能够打开和编辑CouchDB文件…从技术上讲,文档ID是不可变的,因此实际上无法直接更改\u ID字段。也许另一个文档是作为第一个文档的副本创建的 CouchDB 1.1.0中的一个bug允许更新函数创建空字符串ID A询问

我有一个CouchDB数据库正在生产中。其中一个文档已被编辑(在Futon中由其他开发人员编辑)。
它丢了它的ID(别问我他是怎么做到的)

因此,现在文档的id是一个空字符串,因此无法通过Futon进行编辑或删除。

有没有办法侵入CouchDB删除该文档?

我没有尝试过,但应该能够打开和编辑CouchDB文件…

从技术上讲,文档ID是不可变的,因此实际上无法直接更改
\u ID
字段。也许另一个文档是作为第一个文档的副本创建的

CouchDB 1.1.0中的一个bug允许更新函数创建空字符串ID


A询问此问题,我对其进行了演练。

我无法删除该文档。但是数据库本身可以被删除。
我无法在现场重现这个bug。另一个开发人员说他刚刚删除了_id参数并保存了。我不知道他做这件事的时候在CouchDB发生了什么。但当我这样做时,它只会重新创建一个新文档(正如我们所期望的那样)

因此,我一直使用在本地检索数据。
由于id为空,coach_docs不会导入它。所以你甚至不需要手动删除它

然后我重新导入其他数据库中的所有记录。我在配置中更改了对数据库名称的引用,一切正常。

即使存在空id,销毁数据库也不是问题。

这可能是由于某些错误检查导致的(并已修复!)CouchDB在更新处理程序中丢失,如

中所述。看看他们说的,这只是一个使用json输入/输出编辑视图的应用程序。此外,没有关于如何安装它的文档。这个id真的是空的。_all_docs返回以下内容:
{“id”:“key”:“value”:{“rev”:“1-e486474adc02feb80880ab5b1ce874d1”}
是的,我的数据库中也有一个空id。检查:更新:社区找到了这个bug的根源,我在一个类似的问题中写了如何删除该文档: