本文へジャンプ

削除スタブがパージされるタイミングとアクション

問題 (Problem)

削除スタブはどのようなタイミングでパージされるのでしょうか。

解決策 (Solution)


削除スタブは以下のような流れでパージされます。

<削除スタブがパージされるプロセスについて(概略)>

削除スタブのパージは以下のように行われます。

  1. パージ対象となったもののみが、削除するアクションが実施された合に、パージされる。
  2. 対象となる削除スタブは一番最初に実施された削除スタブをパージするアクションによりパージされ、パージ対象となっていないスタブはアクションが実施されてもパージされない。


<パージ対象の判断について>

パージ対象かどうかの判断は、データベースヘッダーに記録されている、NextPurge と Replication Cutoff の値に基づいて行われます。これらの値は以下の意味を持ちます。


1. NextPurge
パージを行うアクションが実施された日時が、この値よりも新しければパージ機能(パージすべき削除スタブがあるかないかのチェック)が実行されます。
パージ機能が実行されるとこの値は、パージ機能実行日+複製の設定の [指定日数間に変更がない文書を削除する] 日数の 1/3 に更新されます。
[指定日数間に変更がない文書を削除する] の日数が 3 で割り切れない場合、小数点以下は切り捨てられます。よって、これを 7 日に設定した場合は、+2 日となります。


2. Replication Cutoff
パージ機能が実行された時にこの値よりも古い削除スタブがあれば、その削除スタブがパージされます。
パージ機能が実行されるとこの値は、パージ機能実行日 - 複製の設定の [指定日数間に変更がない文書を削除する] の日数に更新されます。


(具体的な流れについて)
具体的には、以下のような流れで削除スタブのパージが行われます。

複製の設定の [指定日数間に変更がない文書を削除する] の日数は 3、NextPurge・Replication Cutoff の値は以下のようになっている場合
NextPurge: 2005/07/04 14:58:01、Replication Cutoff: 2005/06/30 14:58:01

1. 7/03 15:02 文書を削除し、削除スタブを作成します。

2. 7/03 15:07 updall を行います。

パージを行うアクション実行日 < NextPurge のためパージ機能は実行されません。そのため、NextPurge・Replication Cutoff の値は更新されず、以下のままです。
  NextPurge: 2005/07/04 14:58:01、Replication Cutoff: 2005/06/30 14:58:01
当然ながら、削除スタブもパージされません。

3. 7/04 15:16 updall を行います。

パージを行うアクション実行日 > NextPurge なのでパージ機能が実行され、NextPurge・Replication Cutoff の値は以下のように値が更新されます。
  NextPurge: 2005/07/05 15:16:00、Replication Cutoff: 2005/07/01 15:16:00
しかし、削除スタブが作成された日時 > Replication Cutoff のため削除スタブはパージされません。


4. 7/07 14:54 updall を行います。

パージを行うアクション実行日 > NextPurge なのでパージ機能が実行され、NextPurge・Replication Cutoff の値は以下のように値が更新されます。
  NextPurge: 2005/07/08 14:54:48、Replication Cutoff: 2005/07/04 14:54:48
そして、削除スタブが作成された日時 < Replication Cutoff となるため削除スタブがパージされます。



(サーバーを長期間シャットダウンしている場合)
上記のように、パージを行うアクション実行日 > NextPurge であれば、パージ機能が実行され、対象となる削除スタブがあればパージされます。そのため、サーバーを長期間シャットダウンしているような状態でも、削除スタブがパージされないということはありません。


([指定日数間に変更がない文書を削除する]を 2 以下にした場合)
通常は複製の設定の[指定日数間に変更がない文書を削除する] 日数の 1/3 が NextPurge に設定されていきますが、これを 2 以下にすると以下のように動作します。

1. 0 にした場合

この値を 0 にした場合は、NextPurge の値には 0 が設定され、Replication Cutoff の値は設定を 0 にした日時になります。その結果全ての削除スタブがパージ対象となり、即時にパージされます。
しかし、NextPurgeの値が 0 だと、パージを行うアクションが実行されてもパージ機能は実行されず、updall 等を行っても、Replication Cutoff の値が更新されません。そのため、これ以降は常に 削除スタブが作成された日時 > Replication Cutoff となり削除スタブはパージされません。


2. 1 にした場合

この値を 1 にした場合は NextPurge の値には 設定変更日 +1 日 が設定され、Replication Cutoff の値は、設定変更日 -1 日になります。
具体的には、NextPurge: 2005/07/08 14:54:48、Replication Cutoff: 2005/07/04 14:54:48 となっている データベース で 7/07 15:17 に削除スタブを作成し、設定を 1 に変更すると以下のように更新されます。
 NextPurge: 2005/07/08 15:17:45、Replication Cutoff: 2005/07/06 15:17:45

7/08 15:20 にこのデータベースへ updall を実行すると、パージを行うアクション実行日 > NextPurge なのでパージ機能が実行され、NextPurge・Replication Cutoff の値は以下のように値が更新されます。そして、削除スタブが作成された日時 < Replication Cutoff となり、削除スタブもパージされます。
 NextPurge: 2005/07/09 15:20:00、Replication Cutoff: 2005/07/07 15:20:00

3. 2 にした場合

この値を 2 にした場合 NextPurge の値には 設定変更日 +2 日が設定され、Replication Cutoff の値は、設定変更日 -2 日になります。
具体的には、NextPurge: 2005/07/09 15:20:00、Replication Cutoff: 2005/07/07 15:20:00 となっているデータベースで 7/08 15:28 に 削除スタブを作成し、設定を 2 に変更すると以下のように更新されます。
 NextPurge: 2005/07/09 15:28:33、Replication Cutoff: 2005/07/06 15:28:33

7/09 15:38 にこのデータベースへ updall を実行すると、パージを行うアクション実行日 > NextPurge なのでパージ機能が実行され、NextPurge・Replication Cutoff の値は以下のように値が更新されます。しかし、削除スタブが作成された日時 > Replication Cutoff のため、削除スタブはパージされません。
 NextPurge: 2005/07/10 15:38:17、Replication Cutoff: 2005/07/07 15:28:33

7/10 以降にパージを行うアクションを実行すると、削除スタブが作成された日時 < Replication Cutoff となり、削除スタブがパージされます。



<パージを行うアクションについて>
削除スタブをパージするアクションは以下の 4 つとなります。これらのアクションが取られた時にパージすべき削除スタブがあれば、パージが行われます。
  1. ローカルでデータベースを開いた場合
  2. Updall をオプションでデータベースを指定しないで実行した場合
  3. Compact -c を実行した場合
  4. パージ間隔を 0 に変更した場合

上記はすなわち、以下の場合には削除スタブはパージされないということを表しています。

  1. Lotus Domino 上のデータベースを開いた時
  2. Updall をデータベース指定で実行した時
  3. Compact をオプション無しで実行した時

また、fixup は破損した文書は削除しますが、削除スタブはパージしません。

補足情報 (Supporting Information)

関連文書 (Related Document)


掲載内容は2008年4月15日現在の情報です。内容は事前の予告なく変更することがあります。
IBM、IBM ロゴおよび ibm.com は、世界の多くの国で登録された International Business Machines Corporation の商標です。
他の製品名およびサービス名等は、それぞれ IBM または各社の商標である場合があります。
現時点での IBM の商標リストについては、www.ibm.com/legal/copytrade.shtml (US) をご覧ください。


 
Lotus software

文書情報

プロダクト・ファミリー
Domino Server


プロダクト・カテゴリー
Server > Replication > Settings


オペレーティングシステム


ソフトウェア・バージョン
Domino Server 8.x; Domino Server 7.x; Domino Server 6.x; Domino Server 5.x


文書番号
724632


最終更新日
2008年04月15 日