2014-07-26 80 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