Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
_Android上的couchDb中不存在复制数据库_Couchdb_Couchbase_Touchdb - Fatal编程技术网

_Android上的couchDb中不存在复制数据库

_Android上的couchDb中不存在复制数据库,couchdb,couchbase,touchdb,Couchdb,Couchbase,Touchdb,我正在尝试设置android平板电脑和系统之间的复制。我使用CouchDbInstance对象来设置复制 这是我的密码 /** * @param builder * @param couchDbInstance * @return the @Link{ReplicationStatus} for the replication command @Link {ReplicationCommand.Builder} */ private Replic

我正在尝试设置android平板电脑和系统之间的复制。我使用
CouchDbInstance
对象来设置复制

这是我的密码

 /**
     * @param builder
     * @param couchDbInstance
     * @return the @Link{ReplicationStatus} for the replication command @Link {ReplicationCommand.Builder}
     */
    private ReplicationStatus replicate(ReplicationCommand.Builder builder, CouchDbInstance couchDbInstance) {
        int retryCount = 0;
        ReplicationStatus replicationStatus = null;
        while (retryCount < REPLICTAION_RETRY_MAX) {
            replicationStatus = couchDbInstance.replicate(builder.build());
            if (replicationStatus.isOk()) {
                break;
            }
            retryCount++;
        }
        return replicationStatus;
    }
/**
*@param生成器
*@param couchDbInstance
*@返回复制命令@Link{ReplicationCommand.Builder}的@Link{ReplicationStatus}
*/
私有复制Status replicate(ReplicationCommand.Builder生成器,CouchBinInstance CouchBinInstance){
int retryCount=0;
ReplicationStatus ReplicationStatus=null;
while(retryCount
在沙发日志中,我看到了404上的帖子


我们使用couchbasemobile,我知道它不太受支持。我能知道是否不支持
\u replicate
复制方式,我应该使用
\u replicator
复制方式吗我对java知之甚少,所以我在这里猜测,但我想你的问题是误解了如何使用
\u replicate

这里的文档解释说:它不再出现在官方文档中,因为我认为他们希望人们使用_replicator

要启动连续复制,请发布到_replicate:

{"source":"example-database","target":"target-db", "continuous": true}
作为回应,您得到:

{"ok":true,"_local_id":"127c65ee56bcd253d9a019f5a6f84f16+continuous+create_target"}
{"ok":true,"_local_id":"127c65ee56bcd253d9a019f5a6f84f16+continuous+create_target"}
要获取复制的状态,可以获取_active_任务。作为响应,对于每个活动复制,您将获得:

{"ok":true,"_local_id":"127c65ee56bcd253d9a019f5a6f84f16+continuous+create_target"}
{"ok":true,"_local_id":"127c65ee56bcd253d9a019f5a6f84f16+continuous+create_target"}
如果“\u local\u id”不在活动任务中,则复制不会发生

我认为你的问题在于:

replicationStatus = couchDbInstance.replicate(builder.build());
我不知道你正在使用的库,但这似乎是错误的。您应该检查“活动”任务以查看“本地”id是否存在。此外,您似乎正在自行实施连续复制

使用couchbasemobile,我发现连续复制存在一些缺陷,定期让“活动”任务检查连续复制是否仍在进行是一个好主意,如果没有,则重新启动它们。但是您仍然应该使用连续复制