スタートアップファイルは、PowerSORTの省略値を定義するファイルです。
PowerSORTのインストール時に作成された雛型を各利用者のホームディレクトリに「.bsortrc」というファイル名で複写して使用します。スタートアップファイルの雛型は、以下の場所にインストールされます。
/opt/FJSVXbsrt/config/BSORTRC
スタートアップファイルは、テキストファイルの形式です。内容を変更する場合は、一般のテキストエディタで編集します。同一の定義値を複数指定した場合は、後に指定したものが有効となります。また、#で始まる行はコメント行となります。雛型のスタートアップファイルでは、各種定義値がコメント行として記述されています。
以下にスタートアップファイルで定義可能な定義値を示します。
定義値 | 意味 |
---|---|
チェック機構の指定 | |
ファイルシステムの指定 | |
先入力先出力(FIFO)機能の指定 | |
作業域の大きさの指定 | |
メッセージを出力するファイル名の指定 | |
出力するメッセージ種別(レベル)の指定 | |
メッセージの出力形式の指定 | |
出力ファイルがシステム標準のファイルシステムのとき、出力ファイルのクローズ前に書き込み内容を確実に反映させるための指定 | |
「+0」と「-0」を同値と判定するか否かの指定 | |
レコード集約処理実行中に不適切なコードが発見された場合の、終了ステータスの指定 | |
レコード集約処理実行中にオーバフローが発生した場合の、終了ステータスの指定 | |
レコード集約処理実行中にオーバフローが発生した場合、それ以後のレコード集約処理を継続するか否かの指定 | |
レコード集約処理実行中に不適切なレコードが入力された場合の、終了ステータスの指定 | |
syslogへの出力指定 | |
一時ファイルディレクトリ名の指定 | |
2桁年号データの照合順序定義の指定 | |
Unicode UCS-2形式のバイトオーダーの指定 | |
Unicode UTF-32形式のバイトオーダーの指定 | |
BOMの読み飛ばしの有無の指定 |
BSORT_CHKLEVEL={0 | 1}
PowerSORTの内部のチェック機能を指定します。
指定値 | 意味 |
---|---|
0 | 何もチェックしません。(省略値) |
1 | BSORT関数においてインターフェースをチェックします。 |
BSORT_FILESYS_fs=bslibname[:fslibname]
bsortコマンドの入出力ファイルシステムオプション(-F)、bsortexコマンドの-inputオプションまたは-outputオプションのfilesysオペランド、またはbsrtopen関数のBSRTFILE構造体で指定するファイルシステムを定義します。
fs
bsortコマンドの入出力ファイルシステムオプション(-F)、bsortexコマンドの-inputオプションまたは-outputオプションのfilesysオペランドで指定するファイルシステムの識別子(cob1、cob2、cob3)、またはbsrtopen関数のBSRTFILE構造体で指定するファイルシステムの定義値(BSFS_COB1、BSFS_COB2、BSFS_COB3)に対応したファイルシステムの識別子を指定します。
指定可能なファイルシステムの識別子を以下に示します。
COB1、COB2、COB3
参考
識別子は、COBOLファイルシステム用に3つ用意していますが、それぞれに違いはないため、任意に定義可能です。
bslibname
PowerSORTのファイルアクセスライブラリ名を指定します。
指定可能なファイルアクセスライブラリ名を以下に示します。
ファイルアクセスライブラリ名 | 意味 |
---|---|
libbscblrt64.so | 富士通COBOLレコード順ファイル対応のファイルアクセスライブラリ |
libbscblps64.so | 富士通COBOL物理順ファイル対応のファイルアクセスライブラリ |
libbscblrl64.so | 富士通COBOL相対ファイル対応のファイルアクセスライブラリ |
libbscblidx64.so | 富士通COBOL索引ファイル対応のファイルアクセスライブラリ |
fslibname
ファイルシステムライブラリ名を指定します。
パス名は相対パス、絶対パスのいずれでも指定できます。
指定可能なファイルシステムライブラリ名を以下に示します。
ファイルシステムライブラリ名 | 意味 |
---|---|
libcobflm64.so | 富士通COBOLの大容量ファイルシステムライブラリ |
BSORT_FIFO={ON | OFF}
先入力先出力(FIFO)機能を指定します。
指定値 | 意味 |
---|---|
ON | 指定したキーフィールドの値が同一のとき、先に入力したレコードを先に出力します。ソート機能の場合に有効です。マージ機能、コピー機能、レコード集約機能、およびサプレス機能と組み合わせた場合、先入力先出力(FIFO)機能の指定は無視されます。 |
OFF | 指定したキーフィールドの値が同一なレコードの出力順は不定です。(省略値) |
BSORT_MEMSIZE=n
PowerSORTが使用する作業域の大きさ(メモリサイズ)をキロバイト数で指定します。
メモリサイズは64~2097151キロバイトの範囲で指定します。0を指定した場合、またはBSORT_MEMSIZEの指定を省略した場合は、メモリサイズは自動的に設定されます。2097152以上の値を指定した場合は、2097151を指定したとみなされます。
メモリサイズは入力データ量の1/50以上とすることをお薦めします。ただし、入力データ量の1/50が8192キロバイト未満の場合は、8192キロバイトとすることをお薦めします。
BSORT_MSGFILE=メッセージ出力ファイル名
PowerSORTが出力するメッセージを格納するファイルパス名を指定します。
BSORT_MSGLEVEL={N | E | W | I}
PowerSORTが出力するメッセージの種別(レベル)を指定します。
指定値 | 意味 |
---|---|
N | 何も出力しません。 |
E | エラーメッセージを出力します。 |
W | エラーメッセージ、および警告メッセージを出力します。(省略値) |
I | エラーメッセージ、警告メッセージ、および情報メッセージを出力します。 |
また、V5.0以前のバージョンとの互換用として、以下の種別(レベル)も指定できます。
指定値 | 意味 |
---|---|
0 | 何も出力しません。 |
1 | エラーメッセージ、および警告メッセージを出力します。(省略値) |
2 | エラーメッセージ、警告メッセージ、および情報メッセージを出力します。 |
BSORT_MSGSTYLE={1 | 2}
メッセージの出力形式を指定します。
指定値 | 意味 |
---|---|
1 | ヘッダーとメッセージ本文を出力します。 |
2 | ヘッダー、メッセージ種別、日時、メッセージ番号、およびメッセージ本文を出力します。(省略値) |
BSORT_OUTFILE_FSYNC={ON | OFF}
出力ファイルがシステム標準のファイルシステムのファイルのとき、出力ファイルのクローズ前に書込み内容を確実に反映させるかどうかを指定します。
指定値 | 意味 |
---|---|
ON | OSが管理しているバッファの内容をディスクに書き込むためfsync(2)を発行します。そのため、OSのバッファの状況に応じて性能が劣化します。 |
OFF | fsync(2)を発行しません。(省略値) |
BSORT_SIGNEDZERO={EFFECT | IGNORE}
「+0」と「-0」を表現できるデータ形式において、「+0」と「-0」を同値と判定するか否かを指定します。
指定値 | 意味 |
---|---|
EFFECT | 「+0」と「-0」を同値と判定しません。 |
IGNORE | 「+0」と「-0」を同値と判定します。(省略値) |
参考
この指定の影響を受ける「+0」と「-0」を表現できるデータ形式を以下に示します。
内部10進数
外部10進数
前置別符号付数字
後置別符号付数字
前置オーバパンチ符号付数字
後置オーバパンチ符号付数字
テキストファイルのとき、キーフィールド、および選択フィールドの操作としてn(BSOPT_NUMERIC)を指定した場合、またはキーフィールドの操作としてN(BSOPT_CHARNUM)を指定した場合
EFFECTを指定した場合、「+0」と「-0」の大小関係は、「+0」>「-0」となります。
V5.0以前のバージョンでは、EFFECTの指定で動作していました。
BSORT_SUMFILD=n
テキストレコードの集約処理実行中に集約フィールド内に不適切なコードが発見された場合のbsortexコマンド、またはbsortコマンドの終了ステータスを指定します。
nには0から9までの任意の整数値を設定できます。省略した場合、0を指定したとみなします。
BSORT_SUMOVER=n
レコード集約処理実行中にオーバフローが発生した場合のbsortexコマンド、またはbsortコマンドの終了ステータスを指定します。
nには0から9までの任意の整数値を指定できます。省略した場合、0を指定したとみなします。
BSORT_SUMOVERCONT={ON | OFF}
レコード集約処理でオーバフローが発生した場合に、それ以後のレコード集約処理の動作を指定します。
指定値 | 意味 |
---|---|
ON | オーバフローする直前まで集約されたレコードを出力し、それ以後の同値のキーフィールドを持つレコードに対しては、別レコードとしてレコード集約処理を継続します。以降、オーバフローするたびに同様の処理を行います。 |
OFF | オーバフローする直前まで集約されたレコードを出力し、それ以後の同値のキーフィールドを持つレコードに対しては、レコード集約処理を行いません。(省略値) |
BSORT_SUMSHRT=n
テキストレコード、または可変長バイナリレコードの集約処理実行中に集約フィールドを含まないレコードが入力された場合のbsortexコマンド、またはbsortコマンドの終了ステータスを指定します。
nには0から9までの任意の整数値を設定できます。省略した場合、0を指定したとみなします。
BSORT_SYSLOG={N | E | W | I}
PowerSORTがsyslogへ出力するメッセージの種別(レベル)を指定します。
指定値 | 意味 |
---|---|
N | 何も出力しません。(省略値) |
E | エラーメッセージを出力します。 |
W | エラーメッセージ、および警告メッセージを出力します。 |
I | エラーメッセージ、警告メッセージ、および情報メッセージを出力します。 |
BSORT_TMPDIR=一時ファイルのディレクトリパス名[:一時ファイルのディレクトリパス名...]
PowerSORTのソート処理に必要となる一時ファイルを作成するディレクトリパス名を指定します。
メモリ内だけでは処理できない量のレコードをソート処理する場合、BSORT_TMPDIRで指定されたディレクトリに一時ファイルを作成します。指定されたディレクトリが存在しない場合は、エラーとなります。また、コロン(:)で区切ることで複数のディレクトリパス名を指定できます。複数のディレクトリパス名を指定すると、指定されたディレクトリに一時ファイルが分散されるため、空きスペース不足によるエラーを回避できることがあります。ディレクトリパス名を複数指定する場合は、コロン(:)の前後に空白などの不要な文字列を置かないようにしてください。
なお、一時ファイルを作成するディレクトリは優先順位に従って決定します。優先順位については、一時ファイルを作成するディレクトリの優先順位を参照してください。
BSORT_TOPYY=yy
2桁年号データ形式を使ってソートマージ処理する場合に、並替えのしきい値を設定します。
ここで指定したyy年が最小値となります。たとえば、BSORT_TOPYY=60とした場合、最小値が60、最大値が59となり、年号データを下2桁で並べた場合は、1960年から2059年の順に大小関係が決定します。省略値は60です。キーフィールド、および選択フィールドのデータ形式として2桁年号データ形式を指定した場合に有効となります。
BSORT_UCS2TYPE={BIG_ENDIAN | LITTLE_ENDIAN}
Unicode UCS-2形式のバイトオーダーを指定します。
bsortexコマンド、およびbsortコマンドでUnicode UCS-2形式のデータ形式を指定した場合に有効です。
指定値 | 意味 |
---|---|
BIG_ENDIAN | Big endianとします。 |
LITTLE_ENDIAN | Little endianとします。(省略値) |
BSORT_UTF32TYPE={BIG_ENDIAN | LITTLE_ENDIAN}
Unicode UTF-32形式のバイトオーダーを指定します。
bsortexコマンド、およびbsortコマンドでUnicode UTF-32形式のデータ形式を指定した場合に有効です。
指定値 | 意味 |
---|---|
BIG_ENDIAN | Big endianとします。 |
LITTLE_ENDIAN | Little endianとします。(省略値) |
BSORT_UNICODEBOM={ON | OFF}
入力ファイルがテキストファイルで、かつ入力ファイルのコード系がUnicode系(UCS-2形式、UTF-32形式、またはUTF-8形式)のとき、BOMの読み飛ばしの有無を指定します。
入力ファイルにBOMが存在し、BOMを読み飛ばした場合、出力ファイルにBOMを付加します。複数の入力ファイルを指定している場合は、先頭に指定した入力ファイルにBOMが存在し、BOMを読み飛ばした場合、出力ファイルにBOMを付加します。
指定値 | 意味 |
---|---|
ON | BOMを読み飛ばします。ただし、先頭がBOMでない場合は読み飛ばしません。入力ファイルの先頭にBOMが存在する場合にレコードからBOMを除外することができます。(省略値) |
OFF | BOMを読み飛ばしません。 |