Provided by: libdpm-dev_1.13.0-1_amd64
dpns_addreplica - add a replica for a given file
#include <sys/types.h> #include "dpns_api.h" int dpns_addreplica (const char *guid, struct dpns_fileid *file_uniqueid, const char *server, const char *sfn, const char status, const char f_type, const char *poolname, const char *fs) int dpns_addreplicax (const char *guid, struct dpns_fileid *file_uniqueid, const char *server, const char *sfn, const char status, const char f_type, const char *poolname, const char *fs, const char r_type, const char *setname)
dpns_addreplica adds a replica for a given file. The file can be specified by guid or by file_uniqueid. If both are given, file_uniqueid is used. guid specifies the Grid Unique IDentifier. server is either the Storage Element fully qualified hostname or the disk server. sfn is either the Site URL or the Physical File Name for the replica. status can be set to - file is available P file is being populated D file is being deleted. f_type may be one of the following: V Volatile D Durable P Permanent. poolname specifies the disk pool name (this argument is only meaningful for the Disk Pool Manager). fs specifies the mount point of the dedicated filesystem (this argument is only meaningful for the Disk Pool Manager). r_type may be one of the following: P Primary S Secondary. setname is either the replica set name or the space token.
This routine returns 0 if the operation was successful or -1 if the operation failed. In the latter case, serrno is set appropriately.
ENOENT The named file does not exist. EACCES Search permission is denied on a component of the parent directory or the effective user ID does not match the owner of the file or read permission on the file entry itself is denied. EFAULT guid and file_uniqueid are NULL pointers or server or sfn is a NULL pointer. EEXIST The sfn exists already. EISDIR The file is not a regular file. EINVAL The length of guid exceeds CA_MAXGUIDLEN, the length of server exceeds CA_MAXHOSTNAMELEN, the length of poolname exceeds CA_MAXPOOLNAMELEN or the length of fs exceeds 79 or setname exceeds 36. ENAMETOOLONG The length of sfn exceeds CA_MAXSFNLEN. SENOSHOST Host unknown. SENOSSERV Service unknown. SECOMERR Communication error. ENSNACT Name server is not running or is being shutdown.
Castor_limits(4), dpns_delreplica(3), dpns_listreplica(3)