gfjournaladmin

## Name

gfjournaladmin — ジャーナルファイルの特定レコードを消去する。

## Synopsis

`gfjournaladmin` [`オプション`] `ジャーナルファイル` `シーケンス番号`

## DESCRIPTION

gfjournaladmin は、ジャーナルファイルの中から、 シーケンス番号 `sequence-number` を持った レコードを消去します。 レコードは、同じ長さの NOP (no operation) レコードで置き換えられるため、 ジャーナルファイル内の他のレコードが移動したり、内容が変更されたりする ことはありません。

gfmd はメタデータの不整合を検知すると、以下のようなログメッセージを出力 し、ただちに終了します。

db_journal_store_thread : seqnum=938 ope=FILECOPY_ADD : \
already exists

このような不整合は発生してはならないものではありますが、gfmd のバグに よって一旦生じてしまうと、gfmd を再起動できなくなります。 起動時に gfmd はジャーナルデータの適用を行うため、再び不整合を検知して、 終了してしまいます。 gfjournaladmin コマンドは、このような状況から抜け出す ために使用します。 上記のログメッセージでは、シーケンス番号 938 のレコードによって不整合が 起きていることが示されています。 このレコードを消すには、次のようにコマンドを実行します。

gfjournaladmin /var/gfarm-metadata/journal/0000000000.gmj 938

BEGIN (オペレーションID 1) および END (オペレーションID 2) の ジャーナルレコードは消すことができないので、注意して下さい。

## OPTIONS

`-h`

  引数オプションを表示します。

`-?`

  `-h` と同じです。

`-n`

  ジャーナルファイルは読み込みますが、実際に書き出す処理は行いません。

`-v`

  冗長な表示を行います。