首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PouchDB紧致()调用

PouchDB紧致()调用
EN

Stack Overflow用户
提问于 2014-05-09 08:34:19
回答 1查看 1.8K关注 0票数 3

我从couchdb (couchappy.com)复制了couchappy.com。复制不是活的。我只是在特定的条件下运行它(例如,应用程序的加载/初始化,最终用户更改某些选项,等等)。

我在couchdb中删除了一些文档,这些文档在pouchdb中显示为“已删除”。然后,我想压缩pouchdb: db.compact()调用。但这个调用似乎对已删除的文档没有多大作用。

请注意,我已经压缩了counchdb。

我正在使用pouchdb 2.2.0。

你们中有谁知道如何在pouchdb上调用what ()调用呢?此外,如何摆脱“删除”的文档?

干杯,阿尔贝托

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-09 19:27:49

CouchDB和PouchDB总是为被删除的文档保留一个“墓碑”版本,因为否则在复制过程中会发生一些奇怪的事情。因此,那些被删除的文档不会在压缩过程中消失;压缩只会消除比最新版本更早的任何版本。

还有一个“清除”命令,它可以真正消除文档及其历史记录,但它非常激烈,而且大多数情况下,除非您必须这样做(来源),否则您不想这么做。而且,PouchDB中还不支持它,尽管它是正在进行中

如果您只是担心文档占用空间,而不是简单地调用pouch.remove(),那么您可以这样做:

代码语言:javascript
复制
pouch.get('mydoc').then(function (doc) {
  var deletedDoc = {
    _id      : doc._id,
    _rev     : doc._rev,
    _deleted : true
  };
  return pouch.put(doc);
}).then(function (res) {
  // etc.
}).catch(function (err) {
  // etc.
};
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23560032

复制
相关文章

相似问题

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