2
在CouchDB和Cloudant中,當文檔發生更改時,數據庫會保留以前的版本。什麼被保存,以及多久?CouchDB/Cloudant中保存了多少個文檔修訂版本以及多長時間?
在CouchDB和Cloudant中,當文檔發生更改時,數據庫會保留以前的版本。什麼被保存,以及多久?CouchDB/Cloudant中保存了多少個文檔修訂版本以及多長時間?
Cloudant和CouchDB永遠保留文檔的元數據(id,rev,deleted和conflict)。文檔內容在壓縮過程中被刪除(Cloudant自動,CouchDB手動),但有一個例外:如果發生衝突,我們將保留文檔內容,直到衝突得到解決。
對於每個文檔,我們保留最後的X版本,其中X是由{username}.cloudant.com/{db}/_revs_limit
返回的數字,默認爲1000.舊版本的修訂版本會丟失。您可以通過向該端點發出具有新值的PUT請求來更改_revs_limit
。例如:
curl -X PUT -d "1500" https://username.cloudant.com/test/_revs_limit
所以,如果一個文件被複制到兩個節點,編輯在節點A 1001次,然後再複製到節點B,它會產生在節點B上發生衝突(因爲我們已經失去了將舊的和新的編輯路徑結合在一起所需的信息)。