Module gfapi_sys::glfs
[−]
[src]
Structs
iovec |
Enums
Struct_glfs | |
Struct_glfs_fd |
Functions
glfs_access⚠ | |
glfs_chdir⚠ | |
glfs_chmod⚠ | |
glfs_chown⚠ | |
glfs_close⚠ | |
glfs_closedir⚠ | |
glfs_creat⚠ |
This function opens a file on a virtual mount. |
glfs_discard⚠ | |
glfs_discard_async⚠ | |
glfs_dup⚠ | |
glfs_fallocate⚠ | |
glfs_fchdir⚠ | |
glfs_fchmod⚠ | |
glfs_fchown⚠ | |
glfs_fdatasync⚠ | |
glfs_fdatasync_async⚠ | |
glfs_fgetxattr⚠ | |
glfs_fini⚠ |
This function attempts to gracefully destroy glfs_t object. An attempt is made to wait for all background processing to complete before returning. glfs_fini() must be called after all operations on glfs_t is finished. |
glfs_flistxattr⚠ | |
glfs_fremovexattr⚠ | |
glfs_from_glfd⚠ | |
glfs_fsetxattr⚠ | |
glfs_fstat⚠ | |
glfs_fsync⚠ | |
glfs_fsync_async⚠ | |
glfs_ftruncate⚠ | |
glfs_ftruncate_async⚠ | |
glfs_futimens⚠ | |
glfs_get_volfile⚠ |
Get the volfile associated with the virtual mount Sometimes it's useful e.g. for scripts to see the volfile, so that they can parse it and find subvolumes to do things like split-brain resolution or custom layouts. The API here was specifically intended to make access e.g. from Python as simple as possible. Note that the volume must be started (not necessarily mounted) for this to work. |
glfs_get_volumeid⚠ |
This function when invoked for the first time sends RPC call to the the management server (glusterd) to fetch volume uuid and stores it in the glusterfs_context linked to the glfs object fs which can be used in the subsequent calls. Later it parses that UUID to convert it from cannonical string format into an opaque byte array and copy it into the volid array. Incase if either of the input parameters, volid or size, is NULL, number of bytes required to copy the volume UUID is returned. |
glfs_getcwd⚠ | |
glfs_getxattr⚠ | |
glfs_init⚠ |
This function initializes the glfs_t object. This consists of many steps: Spawn a poll-loop thread. Establish connection to management daemon and receive volume specification. Construct translator graph and initialize graph. Wait for initialization (connecting to all bricks) to complete. |
glfs_lchown⚠ | |
glfs_lgetxattr⚠ | |
glfs_link⚠ | |
glfs_listxattr⚠ | |
glfs_llistxattr⚠ | |
glfs_lremovexattr⚠ | |
glfs_lseek⚠ | |
glfs_lsetxattr⚠ | |
glfs_lstat⚠ | |
glfs_lutimens⚠ | |
glfs_mkdir⚠ | |
glfs_mknod⚠ | |
glfs_new⚠ |
Create a new 'virtual mount' object. This is most likely the very first function you will use. This function will create a new glfs_t (virtual mount) object in memory. On this newly created glfs_t, you need to be either set a volfile path (glfs_set_volfile) or a volfile server (glfs_set_volfile_server). The glfs_t object needs to be initialized with glfs_init() before you can start issuing file operations on it. |
glfs_open⚠ |
This function opens a file on a virtual mount. |
glfs_opendir⚠ | |
glfs_posix_lock⚠ | |
glfs_pread⚠ | |
glfs_pread_async⚠ | |
glfs_preadv⚠ | |
glfs_preadv_async⚠ | |
glfs_pwrite⚠ | |
glfs_pwrite_async⚠ | |
glfs_pwritev⚠ | |
glfs_pwritev_async⚠ | |
glfs_read⚠ | |
glfs_read_async⚠ | |
glfs_readdir⚠ |
glfs_readdir and glfs_readdirplus are NEITHER thread safe NOR re-entrant when called on the same directory handle. However they ARE thread safe AND re-entrant when called on different directory handles (which may be referring to the same directory too.) |
glfs_readdir_r⚠ |
glfs_readdir_r and glfs_readdirplus_r ARE thread safe AND re-entrant, but the interface has ambiguity about the size of dirent to be allocated before calling the APIs. 512 byte buffer (for dirent) is sufficient for all known systems which are tested againt glusterfs/gfapi, but may be insufficient in the future. |
glfs_readdirplus⚠ | |
glfs_readdirplus_r⚠ |
glfs_readdir_r and glfs_readdirplus_r ARE thread safe AND re-entrant, but the interface has ambiguity about the size of dirent to be allocated before calling the APIs. 512 byte buffer (for dirent) is sufficient for all known systems which are tested againt glusterfs/gfapi, but may be insufficient in the future. |
glfs_readlink⚠ | |
glfs_readv⚠ | |
glfs_readv_async⚠ | |
glfs_realpath⚠ | |
glfs_removexattr⚠ | |
glfs_rename⚠ | |
glfs_rmdir⚠ | |
glfs_seekdir⚠ | |
glfs_set_logging⚠ |
This function specifies logging parameters for the virtual mount. Default log file is /dev/null. |
glfs_set_volfile⚠ |
Specify the path to the volume specification file. If you are using a static volume specification file (without dynamic volume management abilities from the CLI), then specify the path to the volume specification file. This is incompatible with glfs_set_volfile_server(). |
glfs_set_volfile_server⚠ |
Specify the list of addresses for management server. This function specifies the list of addresses for the management server (glusterd) to connect, and establish the volume configuration. The @volname parameter passed to glfs_new() is the volume which will be virtually mounted as the glfs_t object. All operations performed by the CLI at the management server will automatically be reflected in the 'virtual mount' object as it maintains a connection to glusterd and polls on configuration change notifications. This is incompatible with glfs_set_volfile(). |
glfs_set_xlator_option⚠ | |
glfs_setfsgid⚠ | |
glfs_setfsgroups⚠ | |
glfs_setfsuid⚠ | |
glfs_setxattr⚠ | |
glfs_stat⚠ | |
glfs_symlink⚠ | |
glfs_telldir⚠ | |
glfs_truncate⚠ | |
glfs_unlink⚠ | |
glfs_unset_volfile_server⚠ | |
glfs_utimens⚠ | |
glfs_write⚠ | |
glfs_write_async⚠ | |
glfs_writev⚠ | |
glfs_writev_async⚠ | |
glfs_zerofill⚠ | |
glfs_zerofill_async⚠ |
Type Definitions
glfs_fd_t | |
glfs_io_cbk | |
glfs_t |