2014-07-26 82 views
1

当使用pymongo(自2.4),这样做的时候:Pymongo默认日志

m = pymongo.MongoClient() 
m.write_concern = {'w': 2} 
m.write_concern['j'] = True 

我们指定我们要承认(2个副本)和轴颈写。

如果我们在写入关注中没有提到任何内容,则根据此post,默认情况下默认情况下w = 1。 但是当我们什么都没有指定时,日志的deault模式是什么,它是j = True还是False?

回答

2

j选项默认为False。在mongod上禁用日记功能时,插入具有默认设置的文档会成功。如果j默认为True,则会引发异常。

+2

请注意,如果日志被禁用,则出现2.6错误:如果日志被禁用,则2.4会忽略j:true:http://docs.mongodb.org/manual/reference/write-concern/ 注意性能j:true的含义 - 它将限制插入的速率为每个线程30/sec,因为journalCommitInterval将为30msec,并且每个使用j:true的写入都必须等待日志提交。 –

+0

你是对的。我只是用它来测试pymongo。无论如何,'j'默认为'False'。 –

+0

Thx。您的答案和评论会将我带到新的问题:http://stackoverflow.com/questions/25344559/mongodb-journaling-is-the-journal-file-used-when-the-client-request-a-non-jour – scoulomb