抄寫或儲存衝突

多個使用者可以同時編輯一個資料庫備份中相同的文件,也可以同時編輯抄寫階段作業間不同抄本中的相同文件。發生這些狀況時,Domino® 會將某個編輯階段作業的結果儲存在主要文件中,並將其他編輯階段作業的結果儲存為回應文件。這些回應文件的標題為「抄寫或儲存衝突」

Domino® 會使用「$Revisions」欄位(其追蹤每個文件編輯階段作業的日期和時間),來決定哪些文件成為主要文件,哪些文件成為回應文件。

抄寫衝突

當兩個或多個使用者編輯相同的文件並將變更儲存在抄寫間的不同抄本時,便會發生抄寫衝突。這些規則決定 Domino® 儲存編輯階段作業的方式:

  • 編輯及儲存最多次的文件為主要文件;其他文件為「抄寫或儲存衝突」文件。
  • 如果所有文件的編輯及儲存次數相同,則最近儲存的文件為主要文件,其他則為「抄寫或儲存衝突」文件。
  • 如果在一份抄本中編輯文件但在另一份中刪除該文件,則會優先刪除,除非此文件被多次編輯或者在刪除之後才進行編輯。

儲存衝突

當兩位以上的使用者同時開啟並編輯同一部伺服器上的相同文件時,便會發生儲存衝突,即使他們編輯的欄位不同也一樣。發生這種狀況時,儲存的第一份文件便為主要文件。在儲存第二份文件之前,對話框會指示使用者即將儲存衝突文件,而且如果使用者儲存了此文件,它便成為「抄寫或儲存衝突」文件。

註: ACL 與設計變更不會導致抄寫或儲存衝突;最新變更總是優先。

避免抄寫或儲存衝突

下列技術會降低或減少抄寫或儲存衝突。

資料庫設計者可以執行下列動作:

  • 如果沒有欄位衝突,請選取「合併抄寫衝突」「表單」內容,將衝突自動合併到一個文件中。這僅適用於抄寫衝突而不適用於儲存衝突。
  • 指定版本的「表單」內容,讓編輯的文件自動成為新文件。
  • 鎖定資料庫中的文件。如需相關資訊,請參閱相關資訊中的「文件鎖定」。

資料庫管理員可以執行下列動作:

  • 在資料庫ACL 中為使用者指派「作者」權限或較低的存取權,以避免其編輯其他使用者的文件。
  • 將抄本數維持在最小值。
  • 如果「限制 $Revisions 欄位中的項目」資料庫內容設定為大於 0 的值,請指定一個大於現有值的值來增加限制值,或指定 -1 將此限制移除。

如需設計表單及使用 LotusScript® 的相關資訊,請參閱「HCL Domino® Designer 說明」。