Provided by: libgfarm-dev_2.4.1-1.1ubuntu1_amd64
gfs_pio_set_view_index - change file view to an individual fragment
#include <gfarm/gfarm.h> char *gfs_pio_set_view_index (GFS_File gf, int fragment_number, int fragment_index, char *host, int flags);
gfs_pio_set_view_index() changes the process's view of the data in the file specified by gf to a file fragment with the index fragment_index. When creating a new file, it is necessary to specify the total number of file fragments fragment_number. Every parallel process should specify the same fragment_number for the corresponding file. When the file exists, GFARM_FILE_DONTCARE can be specified. If fragment_number is different from the total fragment number of the existent file, it is erroneous. host is used for explicitly specifying a filesystem node. If host is NULL, appropriate filesystem node is chosen. Values of flag are constructed by a bitwise-inclusive-OR of the following list. GFARM_FILE_SEQUENTIAL File will be accessed sequentially. GFARM_FILE_REPLICATE File may be replicated to a local filesystem when accessing remotely. This flag cannot be specified with GFARM_FILE_NOT_REPLICATE. GFARM_FILE_NOT_REPLICATE File may not be replicated to a local filesystem when accessing remotely. This flag cannot be specified with GFARM_FILE_REPLICATE. By default, Gfarm files are accessed as a whole file in global file view where each fragment can be seamlessly accessed.
NULL The function terminated successfully. GFARM_ERR_NO_MEMORY Insufficient memory was available. GFARM_ERR_OPERATION_NOT_PERMITTED The file is not a regular fragmented file. GFARM_ERR_FRAGMENT_NUMBER_DOES_NOT_MATCH The total number of file fragments is different from the existence one. GFARM_ERR_INVALID_ARGUMENT Invalid arguments are specified, for instance, GFARM_FILE_DONTCARE is specified as the total number of fragments of a newly created file. Others An error except the above occurred. The reason is shown by its pointed strings.
gfs_pio_create(3), gfs_pio_open(3), gfs_pio_set_view_local(3)