当前位置: 首页 > 知识库问答 >
问题:

从主要故障恢复后,Mongo Java驱动程序是否恢复正常的写操作?

于正志
2023-03-14

到目前为止,从Mongo手册中,我了解到:

(Mongo服务器)...副本集将尝试选择另一个成员成为新的主服务器。获得多数票的第一个第二名成为第一名。

    null

共有1个答案

斜烈
2023-03-14

如果您给MongoClient提供了replSet成员列表,那么一旦选举过程完成,驱动程序将尝试查找新的主程序。

 类似资料:
  • 我有一些必须继续运行的生产关键代码。 将代码视为 我不能相信代码是没有bug的,我需要能够记录问题以便以后调查。 这一次,我知道代码中的某个地方抛出了一个分段错误,我需要至少能够记录该错误,然后重新开始。 阅读这里有几个解决方案,但每一个都是火焰战,声称解决方案实际上弊大于利,没有真正的解释。我也发现了这个我考虑使用的答案,但是我不确定它对我的用例是否有好处。 那么,从C上的分割故障中恢复的最佳方

  • 顺着我之前的一个问题,大部分评论都说“就是不要,你处于冷宫状态,你要杀光一切,重新开始”。还有一个“安全”的变通方法。 我不明白的是为什么分割错误本质上是不可恢复的。 写入受保护内存的时刻被捕获-否则,不会发送。 如果能够捕捉到写入受保护内存的时刻,我不明白为什么——理论上——它不能在某个低级别上恢复,并将SIGSEGV转换为标准软件异常。 请解释为什么在出现分段错误后,程序处于不确定状态,因为很

  • 我正在尝试找到一种为日志分析工作区规划故障转移/灾难恢复的方法。我浏览了https://docs.microsoft.com/en-us/Azure/Azure-monitor/learn/quick-create-workspace,没有看到任何导出工作区数据以进行灾难恢复的解决方案。下面是唯一可能的办法吗?https://www.borninthecloud.com/export-log-an

  • 程序和人一样都需要具备一定的容错能力,学会知错就改,所以如果不是不可恢复性、导致系统无法正常工作的错误,如果发生了 panic 我们需要恢复程序,让程序继续执行,并且需要记录到底犯了什么错误 在 Go 语言中我们可以通过 defer 和 recover 来实现 panic 异常的捕获,让程序继续执行 package main import "fmt" func div(a, b int) (r

  • 每当我最初创建我的活动时,一切都很顺利,因为我能够正确地膨胀我的布局。但是,问题是每当我切换到使用另一个应用程序,然后返回我自己的应用程序时,我都会收到一个错误,说为空,导致我的应用程序崩溃。如果我切换到另一个应用程序几分钟,我的为空,也会导致我的应用程序崩溃。 如果我对Android生命周期的理解正确的话,我意识到活动是在从后台到前台的时候被重新创建的,而< code>onCreate方法是从这

  • 1)以上假设是否正确。2)当发生故障时,滚动窗口有状态是否有意义,我们从最后一个kafka分区提交的偏移量开始。3)当滚动窗口有状态时,这个状态什么时候可以被flink使用。4)为什么检查点和保存点的状态大小不同。5)当发生故障时,flink总是从sorce运算符开始。对吗?