I am live将新创建的 pouchdb (3.3.1) 同步到已建立的 (iris) couchdb。
初始复制成功发生(pause事件被触发)。
If I do info()
在本地,我得到的 update_seq 为362。如果我做info()
在遥控器上,它显示 update_seq 为4201.
我认为这对我来说是有意义的:本地数据库没有修订 - 只有叶子(即数据库中有 362 个叶子),而远程数据库序列计数器反映了自首次创建以来所做的所有历史更改。
我的问题是:如何以编程方式确定两个数据库之间序列计数器中的初始“偏移量”?我特别希望能够测量初始复制的进度。
您无法真正比较两个数据库之间的序列。但是,您可以做一个db.info()
在远程数据库上,抓取update_seq
,然后将其与last_seq
给你的on('change')
复制期间的事件。这会告诉你你已经取得了多少进步。
如果您想查看这方面的示例,NPM浏览器正是这样做的,在顶部显示百分比计数器。 (它也使用 pouchdb-load,但原理是相同的,因为 seq 也在那里报告。)该代码是开源的,因此请随意查看它是如何工作的。 :)
Edit:正如评论中指出的,如果您正在使用sync
而不是replicate
,您需要检查direction
读取时的参数last_seq
。同样对于 Cloudant,您需要将字符串拆分为-
得到整数 seq。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)