为什么 couchbase-sync-gateway return "Failure adding Rev to RevTree"?
Why does couchbase-sync-gateway return "Failure adding Rev to RevTree"?
我尝试了我在 Couchbase 上阅读的程序来解决冲突 Resolving Conflicts, sync-gateway 1.5。
我从 couchbase-sync-gateway 得到了 _bulk_docs 的结果,这个错误但是我找不到任何反馈:
2019-09-13T12:10:36.932Z HTTP: #754: GET /bucket_01/id.00001?open_revs=all (as admin)
2019-09-13T12:10:37.079Z HTTP: #755: POST /bucket_01/_bulk_docs
2019-09-13T12:10:37.079Z HTTP: #755: --> 401 Login required (0.4 ms)
2019-09-13T12:10:37.203Z HTTP: #756: POST /bucket_01/_bulk_docs (as admin)
2019-09-13T12:10:37.210Z BulkDocs: Doc "id.00001" --> 500 Internal error: Failure adding Rev to RevTree (Failure adding Rev to RevTree)
错误是“将 Rev 添加到 RevTree 失败”,我明白发生了什么,但我无法修复它。
更新:2019 年 9 月 15 日
bulk_docs 的响应与 CRUD 键日志:
2019-09-15T21:14:28.232Z HTTP: #006: POST /cfond_09/_bulk_docs (as admin)
2019-09-15T21:14:28.280Z CRUD: Stored doc "id.00001" / "6-baf5790d2d436f2e7af2715d59c1c3ce"
2019-09-15T21:14:28.284Z CRUD: Stored doc "id.00001" / "9-1c76fa9e825ca5eff39db0752a06eac2"
2019-09-15T21:14:28.286Z CRUD: Failed to add revision ID: 4-3ceed538cc59369128c25e3858183677, error: doc: id.00001, RevTree addRevision, already contains rev "4-3ceed538cc59369128c25e3858183677"
2019-09-15T21:14:28.286Z BulkDocs: Doc "id.00001" --> 500 Internal error: Failure adding Rev to RevTree (Failure adding Rev to RevTree)
2019-09-15T21:14:28.290Z CRUD: Stored doc "id.00001" / "5-ea9b3e32746fcb844d2004bc38061d40"
只有一个修改不顺利,我想我对同一文档的 Bodymap 进行了三个修改,其中一个正文如下:
[...]
8: "{\"_deleted\":true}",
[...]
文档状态:
[...]
"history": {
"revs": [
"4-422342a11e82d6368a08c62e83ecf2b0",
"8-fb0b278568a4bf668f814e0072df2da9",
"2-92501b3c9bbbeca8b470f6d12d9f68c2",
"4-ab334e71ddd5b5537f77af109aed9af2",
"5-63f080d6c319ed3f7f4b3bd5e5e2dd0c",
"1-9d6dfa10417c47474cb8313c047fc3f0",
"3-4245004b12e10b31a1bcbe38505eb5b6",
"7-8e2994be714407787701584156ec150f",
"5-d29926e6904e77678c7970c1bfa7e6ea",
"4-3ceed538cc59369128c25e3858183677",
"6-a7117b51d59a9fd179f369ad965be08e"
],
"parents": [
-1,
7,
5,
-1,
3,
-1,
2,
10,
0,
-1,
4
],
"deleted": [
0,
8,
9
],
"bodymap": {
"6": "{ ... all body ... }",
"8": "{\"_deleted\":true}",
"9": "{ ... all body ... }"
}, [...]
RevTree 中存在违规修订。我不明白问题出在哪里。
2019 年 9 月 16 日更新
我想我了解 Couchbase 和 Sync-Gateway 中发生的事情:一个文档分叉为两个文档,一个 3-XYZ 和 4-QWE。这两个文档相同,但修订版 ID 不同。当我调用 bulk_docs 时,4-QWE 变为 5-IOP,3-XYZ 变为 4-QWE。但是 4-QWE 已经出现在 RevTree 中,错误 500。
这是我的想法,有人同意吗?
2019 年 9 月更新
错误已消失。我在文档中添加了一个新字段,我保存在批量文档中。 bulk_docs 工作正常,但冲突仍然存在 Bodymap。你知道任何解决方案吗?
您可能会在 3 种情况下遇到此错误:
- RevTree addRevision,空revid是非法的
- RevTree addRevision,已经包含 rev“...”
- RevTree addRevision,缺少父 ID“...”
如果您启用 CRUD 日志键,您遇到的特定错误应该被记录:https://docs.couchbase.com/sync-gateway/1.5/config-properties.html#logging-default-logKeys
这应该会提示您出了什么问题。
我尝试了我在 Couchbase 上阅读的程序来解决冲突 Resolving Conflicts, sync-gateway 1.5。
我从 couchbase-sync-gateway 得到了 _bulk_docs 的结果,这个错误但是我找不到任何反馈:
2019-09-13T12:10:36.932Z HTTP: #754: GET /bucket_01/id.00001?open_revs=all (as admin)
2019-09-13T12:10:37.079Z HTTP: #755: POST /bucket_01/_bulk_docs
2019-09-13T12:10:37.079Z HTTP: #755: --> 401 Login required (0.4 ms)
2019-09-13T12:10:37.203Z HTTP: #756: POST /bucket_01/_bulk_docs (as admin)
2019-09-13T12:10:37.210Z BulkDocs: Doc "id.00001" --> 500 Internal error: Failure adding Rev to RevTree (Failure adding Rev to RevTree)
错误是“将 Rev 添加到 RevTree 失败”,我明白发生了什么,但我无法修复它。
更新:2019 年 9 月 15 日
bulk_docs 的响应与 CRUD 键日志:
2019-09-15T21:14:28.232Z HTTP: #006: POST /cfond_09/_bulk_docs (as admin)
2019-09-15T21:14:28.280Z CRUD: Stored doc "id.00001" / "6-baf5790d2d436f2e7af2715d59c1c3ce"
2019-09-15T21:14:28.284Z CRUD: Stored doc "id.00001" / "9-1c76fa9e825ca5eff39db0752a06eac2"
2019-09-15T21:14:28.286Z CRUD: Failed to add revision ID: 4-3ceed538cc59369128c25e3858183677, error: doc: id.00001, RevTree addRevision, already contains rev "4-3ceed538cc59369128c25e3858183677"
2019-09-15T21:14:28.286Z BulkDocs: Doc "id.00001" --> 500 Internal error: Failure adding Rev to RevTree (Failure adding Rev to RevTree)
2019-09-15T21:14:28.290Z CRUD: Stored doc "id.00001" / "5-ea9b3e32746fcb844d2004bc38061d40"
只有一个修改不顺利,我想我对同一文档的 Bodymap 进行了三个修改,其中一个正文如下:
[...]
8: "{\"_deleted\":true}",
[...]
文档状态:
[...]
"history": {
"revs": [
"4-422342a11e82d6368a08c62e83ecf2b0",
"8-fb0b278568a4bf668f814e0072df2da9",
"2-92501b3c9bbbeca8b470f6d12d9f68c2",
"4-ab334e71ddd5b5537f77af109aed9af2",
"5-63f080d6c319ed3f7f4b3bd5e5e2dd0c",
"1-9d6dfa10417c47474cb8313c047fc3f0",
"3-4245004b12e10b31a1bcbe38505eb5b6",
"7-8e2994be714407787701584156ec150f",
"5-d29926e6904e77678c7970c1bfa7e6ea",
"4-3ceed538cc59369128c25e3858183677",
"6-a7117b51d59a9fd179f369ad965be08e"
],
"parents": [
-1,
7,
5,
-1,
3,
-1,
2,
10,
0,
-1,
4
],
"deleted": [
0,
8,
9
],
"bodymap": {
"6": "{ ... all body ... }",
"8": "{\"_deleted\":true}",
"9": "{ ... all body ... }"
}, [...]
RevTree 中存在违规修订。我不明白问题出在哪里。
2019 年 9 月 16 日更新
我想我了解 Couchbase 和 Sync-Gateway 中发生的事情:一个文档分叉为两个文档,一个 3-XYZ 和 4-QWE。这两个文档相同,但修订版 ID 不同。当我调用 bulk_docs 时,4-QWE 变为 5-IOP,3-XYZ 变为 4-QWE。但是 4-QWE 已经出现在 RevTree 中,错误 500。 这是我的想法,有人同意吗?
2019 年 9 月更新
错误已消失。我在文档中添加了一个新字段,我保存在批量文档中。 bulk_docs 工作正常,但冲突仍然存在 Bodymap。你知道任何解决方案吗?
您可能会在 3 种情况下遇到此错误:
- RevTree addRevision,空revid是非法的
- RevTree addRevision,已经包含 rev“...”
- RevTree addRevision,缺少父 ID“...”
如果您启用 CRUD 日志键,您遇到的特定错误应该被记录:https://docs.couchbase.com/sync-gateway/1.5/config-properties.html#logging-default-logKeys
这应该会提示您出了什么问题。