NAME¶
gfs_pio_set_view_local -
並列プロセスに対応した
fragment
単位のアクセスを行う
SYNOPSIS¶
#include <gfarm/gfarm.h>
char *gfs_pio_set_view_local (GFS_File
gf, int
flags);
DESCRIPTION¶
ファイルをフラグメント単位でアクセスすることを指定します。
アクセスするフラグメントは、Gfarm並列プロセスのノード番号に対応した
ものになります。すなわち、関数
gfs_pio_set_local(3) の
node
引数に指定したフラグメントです。
フラグメントの総数は、Gfarm並列プロセスのノードの総数、すなわち
gfs_pio_set_local(3) の
nnode
引数と同一になります。
もし、既存のファイルを開くときに、フラグメントの総数とノードの総数が
異なった場合には、この関数はエラーとなります。
引数
flag には、
GFARM_FILE_SEQUENTIAL、 GFARM_FILE_REPLICATE、
GFARM_FILE_NOT_REPLICATE
の論理和が指定できます。
値の意味は
gfs_pio_set_view_index(3)
の解説を参照ください。
この関数を呼ばない状態では、Gfarmファイルは
global view
状態となっており、全てのフラグメントが結合された単一ファイルに見えます。
RETURN VALUES¶
- NULL
- 正常終了を示します。
- GFARM_ERR_NO_MEMORY
- メモリ不足のため処理を中止しました。
- GFARM_ERR_OPERATION_NOT_PERMITTED
- 指定したパス名が、フラグメント化ファイルではありません。
- GFARM_ERR_FRAGMENT_NUMBER_DOES_NOT_MATCH
- ノード数と、フラグメント総数が、適合しません。
- その他
- 上記以外のエラーが生じたことを示します。
SEE ALSO¶
gfs_pio_create(3),
gfs_pio_open(3),
gfs_pio_set_local(3),
gfs_pio_set_view_index(3)