ステータス コードは、情報を両方向に伝える32ビット符号付きバイナリ値です。
次の表に、Teradata TPumpからINMODへのインターフェースによって使用される8つのステータス コードの定義を示します。
値 | 説明 |
---|---|
0 | Teradata TPumpは、最初の呼び出しを行なっており、INMODルーチンからレコードが返されることを予期している。 この時点で、INMODルーチンはTeradata TPumpへデータ レコードを送る前の初期化タスクを実行する。 |
1 | Teradata TPumpは、2回目以降の呼び出しを行なっており、INMODルーチンからレコードが返されることを予期している。 |
2 | クライアント システムが再始動された。INMODルーチンは最後のチェックポイントに位置を変更する。Teradata TPumpはINMODルーチンからデータ レコードが返されることを予期していない。 クライアント システムが第1チェックポイントより前に再始動した場合、Teradata TPumpは再初期化のためにエントリ コード0を送る。コード3の後でINMODが供給する位置変更情報は、再始動ログ表から読み取られ、通常はデータ レコードのために使用されるバッファに返される。
|
3 | チェックポイントが書き込まれた。INMODルーチンはチェックポイントの位置を記憶している。Teradata TPumpはINMODルーチンからデータ レコードが返されることを予期していない。 通常はデータを返すのに使用されるバッファにおいて、INMODは、このチェックポイントへ位置を変更するのに必要な任意の情報(最大100バイト)を返す。ユーティリティは、この情報を再始動ログ表に保存する。 |
4 | データベースに障害がある。INMODルーチンは最後のチェックポイントに位置を変更する。Teradata TPumpはINMODルーチンからデータ レコードが返されることを予期していない。
|
5 | Teradata TPumpジョブが終了した。INMODルーチンは必要な任意の終結タスクを実行する。 |
6 | INMODは初期化し、レコード受領の準備をする。 |
7 | INMODが次のレコードを利用できる。 |
次の表に、INMODからTeradata TPumpへのインターフェースによって使用される2つのステータス コードの説明を示します。
値 | 説明 |
---|---|
0 | 読み取りコール(コード1)の本体部の値としてレコードが返されている。 読み取り以外のコールに関しては、値0は成功を示す。 |
ゼロ以外の値 | INMODルーチンは読み取りコール(コード1)のファイルの終わりに位置する。読み取り以外のコールに関しては、0以外の値はTeradata TPumpを終了させる処理エラーを示す。 |
長さ
長さは、INMODルーチンがデータ レコードの長さをバイトで指定するために使用する32ビットのバイナリ値です。INMODルーチンでは、Length値に0を使用してファイルの終わりに達したことを示すことができます。
本体
本体は、INMODルーチンがデータ レコードを入れる領域です。データベースの最大レコード長は62K、正確には63,488バイトです。
順序番号
順序番号は、ソース順序番号のレコード カウンター部分を示す4バイトの整数です。
パラメータ リスト
2番目の32ビット アドレスのパラメータ リストは、以下のもので構成されます。
- VARCHARの指定
- 2バイトの長さの指定、m
- Teradata TPumpが構文解析して提供したmバイトのparms文字列
データの損傷を避けるために、これらのプロトコルに従っていないINMODは、再始動コード2、3、4を検出した時点で終了するべきです。適切なTeradata TPump再始動操作をサポートするために、INMODルーチンは、ここで説明したとおりに、チェックポイント情報を保存および復元する必要があります。INMODがチェックポイント情報を別の方法で保存した場合は、その後の再始動/回復操作によってデータの損失や損傷が生じる可能性があります。