В настоящее время у меня есть задача репликации, которая выглядит примерно так:
{
"continuous": true,
"create_target": true,
"owner": "admin",
"source": "https://remote/db/",
"target": "db",
"user_ctx": {
"roles": [
"_admin"
]
}
}
Используя http, я не вижу ошибок в журнале. Используя https, репликация технически работает, но в журналах также отображается огромное количество ошибок. Я бы хотел исправить эти ошибки.
Ошибки выглядят так:
[Fri, 01 Nov 2013 22:11:49 GMT] [info] [<0.2227.0>] Retrying GET request to https://remote/db/doc?atts_since=%5B%2271-315ddf7e3d31004df5cd00846fd1cf38%22%5D&revs=true&open_revs=%5B%2275-a40b4c7d00c17cddcbef5b093bd10392%22%5D in 0.5 seconds due to error req_timedout
Однако я могу curl
эти URL без тайм-аута:
$ curl -k 'https://remote/db/doc?atts_since=%5B%2273-7a26ae649429b96ed01757b477af40bd%22%5D&revs=true&open_revs=%5B%2276-c9e25fe15497c1c60f65f8da3a68d57d%22%5D'
<returns a bunch of garbage (expected garbage ;)>
И у меня очень щедрые 120 connection_timeout
установить на репликацию couchdb:
[Fri, 01 Nov 2013 22:13:00 GMT] [info] [<0.3359.0>] Replication `"36d8a613224f3749a73ae4423b5f9733+continuous+create_target"` is using:
4 worker processes
a worker batch size of 500
20 HTTP connections
a connection timeout of 120000 milliseconds
10 retries per request
socket options are: [{keepalive,true},{nodelay,true}]
source start sequence 100321
Я не могу придумать достаточно значительной разницы, чтобы curl получал ответ за секунды, а репликатор CouchDB истекал с таймаутом 120 секунд. Что мне не хватает, что еще можно попробовать настроить?
CouchDB v1.2.0 на Ubuntu 13.04 под управлением Linux ip-10-40-65-137 3.8.0-32-generic # 47-Ubuntu SMP Вт, 1 октября 22:35:23 UTC 2013 x86_64 x86_64 x86_64 GNU / Linux