mgo会话中的SetSafe默认值

时间:2016-08-04 11:00:53

标签: mongodb go mgo

有人可以解释我SetSafe()的默认值&Safe{}SetSafe(nil)之间的区别吗?

根据mgo godoc

  

如果安全参数为nil,则会话处于不安全模式,并且写入将变为“即发即忘”,而不会进行错误检查。不安全模式更快,因为操作不会等待确认。

     

如果safe参数不是nil,则任何更改查询(insert,update,...)后面都会跟一个带有指定参数的getLastError命令,以确保正确处理请求。

     

默认为& Safe {},表示检查错误并使用所有字段的默认行为。

查看code,它似乎会在mongo中使用值getLastError调用j:false, w:0, wtimeout:0 command。这意味着它不会从mongo返回任何错误,并且在调用SetSafe(nil)时行为似乎相似。

那么在使用SetSafe(&Safe{})调用mongo时,我期望收到什么错误?

我在使用Mongo 3.0.9。

0 个答案:

没有答案