• MongoDB---出现no write has been done on this connection解决方式


    no write has been done on this connection

    这个问题出现了好几天。日志里面一天出现几十次no write has been done on this connection

    所以研究好几天。

    程序那边所做的操作就是在发生故障时。抛出getLastError

    然后去查了一下getLastError的方法,W有几个值,

    1:不论什么一台server写完就可以进行下一步操作。

    2:必需要有2台完毕。

    0:则是不考虑写完毕与否,继续写操作。

    另一个数值就是majority。查看官方文档后。我的理解是。大于2的值都用majority。以下是官方的解释

    以上是官方对几个參数的所有解释。

    另一个值是j,true,false,true就打开日志记录。

    举个样例。w:1,j:true,那么,就必需要一台server写操作完毕后,而且将操作写进journal,然后才干够进行下一步操作。

    图中能够看到。必须写完journal才干返回有效值。

    从红线部分,能够看出,majority会替代大于2的数字,

    回到题目,报那个错,最后发现是版本号问题。我们能够通过下面方法验证,在2.2上,对一个空集合进行remove操作,然后立即输入getLastError(w:1),就会返回题目的错误。可是在2.6上,就不会。

  • 相关阅读:
    PKUSC2021游记
    P3349 [ZJOI2016]小星星
    序二
    1.3 解析库的安装
    1.2 请求库的安装
    1.5 存储库的安装
    1.6 Web 库的安装
    1.7 App 爬取相关库的安装
    2.1 HTTP 基本原理
    1.9 部署相关库的安装
  • 原文地址:https://www.cnblogs.com/yjbjingcha/p/7343874.html
Copyright © 2020-2023  润新知