【问题标题】:Arango DB Replication applier not workingArangodb 复制应用程序不工作
【发布时间】:2020-12-09 07:24:25
【问题描述】:

我正在尝试设置 Arango 的主从模型。能够进行第一批更新,但实时同步应用程序不起作用。它在索引约束上一直失败,这在 master 中运行良好,并且没有重复键问题。

require("@arangodb/replication").setupReplication({
...>   endpoint: "tcp://master:8529",
...>   username: “name”,
...>   password:  “pass”,
...>   autoStart: true,
...>  incremental:true,
...>  verbose:true,
...> });

应用程序状态。

{ 
  "state" : { 
    "started" : "2020-12-08T07:21:50Z", 
    "running" : false, 
    "phase" : "inactive", 
    "lastAppliedContinuousTick" : null, 
    "lastProcessedContinuousTick" : null, 
    "lastAvailableContinuousTick" : null, 
    "safeResumeTick" : null, 
    "progress" : { 
      "time" : "2020-12-09T07:07:44Z", 
      "message" : "applier shut down", 
      "failedConnects" : 0 
    }, 
    "totalRequests" : 4, 
    "totalFailedConnects" : 0, 
    "totalEvents" : 0, 
    "totalDocuments" : 0, 
    "totalRemovals" : 0, 
    "totalResyncs" : 3, 
    "totalOperationsExcluded" : 0, 
    "totalApplyTime" : 0, 
    "averageApplyTime" : 0, 
    "totalFetchTime" : 0, 
    "averageFetchTime" : 0, 
    "lastError" : { 
      "errorNum" : 0 
    }, 
    "time" : "2020-12-09T07:13:02Z" 
  }, 
  "server" : { 
    "version" : "3.6.4", 
    "serverId" : "237391144398597" 
  }, 
  "endpoint" :


我尝试了(同步、异步)一切。它只是进行第一批更新,并没有进行实时更新。不知何故,应用程序刚刚关闭。请帮忙

【问题讨论】:

    标签: arangodb arangojs


    【解决方案1】:

    你也可以试试

    require("@arangodb/replication").setupReplication({ 
       endpoint: "tcp://master:8529",
       username: “name”,
       password:  “pass”,
       autoStart: true,
       incremental:true,
       verbose:true,
       includeSystem: true 
    });
    

    用于在当前数据库上启动应用程序,或者,以下用于为所有数据库/整个服务器启动应用程序

    require("@arangodb/replication").setupReplicationGlobal({ 
       endpoint: "tcp://master:8529",
       username: “name”,
       password:  “pass”,
       autoStart: true,
       incremental:true,
       verbose:true
    });
    

    在后一种情况下(setupReplicationGlobal),您可以稍后通过以下方式检查应用程序的状态

    require("@arangodb/replication").globalApplier.state();
    

    (请注意这里的globalApplierapplier

    【讨论】:

    • 感谢您的快速回复。我想我已经尝试过包含系统集合,并且会再次尝试一下。事实上,我尝试了完整的全局和没有全局的复制和应用程序。我在这种形式中没有遇到任何问题,但是当我运行 require("@arangodb/replication").syncGlobal({. or require("@arangodb/replication").sync({. 我得到键 I 的约束问题已经创建了 hasIndex。这只发生在 Master 持续使用事件系统中的数据时。当我复制 master 不使用事件时,这运行没有问题。
    • - 我最近有一个发现。唯一索引在 Arango 中无法正常工作。它以某种方式具有多个文档的“”空字符串。这就是它在创建奴隶时失败的原因。不知道它是如何放在首位的。我也将它升级到最新版本。帮助不大。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-10-07
    • 2015-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多