class type inode_view_t =Inheritsobject
..end
method as_owner : owner
method inode_get_e : id:int64 -> Pfs_rpcapi_aux.inodeinfo option Uq_engines.engine
method inode_get_with_lock_e : id:int64 -> Pfs_rpcapi_aux.inodeinfo option Uq_engines.engine
inode_get_e
but immediately acquires a write lock for the
inodemethod inode_alloc_e : Pfs_rpcapi_aux.inodeinfo -> int64 Uq_engines.engine
method inode_upd_e : id:int64 ->
keep_blocklimit:bool ->
permission:(Pfs_rpcapi_aux.inodeinfo -> errno option) ->
Pfs_rpcapi_aux.inodeinfo -> unit Uq_engines.engine
blocklimit
is only allowed
if keep_blocklimit=false
. filetype
changes are silently ignored.
permission
: may indicate an error. This function is called with the
previous version of inodeinfo.
method inode_dealloc_e : id:int64 -> unit Uq_engines.engine
id
. This
is not checked, however.method inode_get_blocks_e : id:int64 ->
blkidx:int64 ->
len:int64 ->
pin_flag:bool ->
bm_view_t -> Nn_blocklist.blocklist Uq_engines.engine
method inode_upd_blocks_e : id:int64 ->
del:int64 * int64 ->
add:Nn_blocklist.blocklist ->
set_mtime:bool ->
set_blocklimit:int64 ->
permission:(Pfs_rpcapi_aux.inodeinfo -> errno option) ->
unit Uq_engines.engine
del
range, then add
the blocks from add
.
If set_mtime
, sets the mtime fields in inodeinfo to the server
time.
set_blocklimit
: the new blocklimit
field in inodeinfo.
permission
: may indicate an error. This function is called with the
previous version of inodeinfo.
method allocinfo_get_e : id:int64 -> Nn_db.allocinfo list Uq_engines.engine
method inode_upd_time : id:int64 ->
mtime:Pfs_rpcapi_aux.time option -> ctime:Pfs_rpcapi_aux.time option -> unit
method inode_set_anonymous : id:int64 -> unit
method inode_set_used : int64 -> unit
method filename_get_e : dir_inode:int64 -> name:string -> int64 option Uq_engines.engine
name
of directory dir_inode
method filename_rev_get_e : inode:int64 -> (int64 * string) list Uq_engines.engine
method filename_rev_get_dir_e : inode:int64 -> (int64 * string * (unit -> unit)) Uq_engines.engine
ECONFLICT
.
The return value is (parent_dir_inode, dir_name, unlock)
For inode=1, the value is (1,"/",unlock)
.
method filename_parent_dir_e : inode:int64 -> int64 option Uq_engines.engine
method filename_count_e : inode:int64 -> int Uq_engines.engine
filename_rev_get_e
)method filename_list_e : dir_inode:int64 -> (string * int64) list Uq_engines.engine
method filename_link_e : dir_inode:int64 -> name:string -> inode:int64 -> unit Uq_engines.engine
method filename_unlink_e : dir_inode:int64 ->
name:string -> owner_restr:string option -> unit Uq_engines.engine
owner_restr
is passed,
it is required that the inode is owned by this user (or EPERM
)method filename_rename_e : from_dir_inode:int64 ->
from_name:string ->
to_dir_inode:int64 ->
to_name:string -> owner_restr:string option -> unit Uq_engines.engine
method delayed_inode_deletes : int64 list * int64 list
del_now, del_later
:
del_now
are the inodes to be deleted at the end of the transaction.
del_later
are the inodes to be marked as anonymous (because there
are still users)