Plasma GitLab Archive
Projects Blog Knowledge

sig
  type errno = Plasma_util.errno
  exception Transaction_error of Nn_state.errno
  class type shared_state_t =
    object
      method blockmap_get_e :
        identity:string -> Nn_blockmap.blockmap_t Uq_engines.engine
      method blockmap_prioritizer : unit Uq_engines.prioritizer
      method blockmaps : Nn_blockmap.blockmap_t list
      method create_blockmap : Nn_blockmap.blockmap_t -> unit
      method cur_rev_ident : string
      method datastore_max_id : int option
      method datastore_use_id : int -> unit
      method enough_slaves : bool
      method event_system : Unixqueue.event_system
      method exists_blockmap : string -> bool
      method finish_transaction_serialized :
        (Unixqueue.event_system -> bool Uq_engines.engine) ->
        bool Uq_engines.engine
      method forget_identity : string -> unit
      method get_blockmap : string -> Nn_blockmap.blockmap_t
      method inode_get_new_id_serialized :
        (Unixqueue.event_system -> int64 Uq_engines.engine) ->
        int64 Uq_engines.engine
      method inode_max_id : int64 option
      method inode_use_id : int64 -> unit
      method lock_filename :
        int64 * string ->
        [ `Exists | `Link | `Unlink ] -> <  > -> (unit -> unit) option
      method lock_inode : int64 -> <  > -> (unit -> unit) option
      method master : string
      method master_enabled : bool Pervasives.ref
      method new_rev_ident : unit -> string
      method node_config : Nn_config.nn_node_config
      method set_rev_ident : string -> unit
      method slaves :
        (string * Rpc_proxy.ManagedClient.mclient * bool Pervasives.ref) list
      method unlock_filenames : <  > -> unit
      method unlock_inodes : <  > -> unit
    end
  type journal = Nn_db.modification Queue.t
  class type view_t =
    object
      method post_commit : bool -> unit
      method pre_commit : Nn_state.journal
      method rollback : unit -> unit
    end
  class type ds_view_t =
    object
      method datastore_del_e : id:int -> unit Uq_engines.engine
      method datastore_list_e :
        unit -> Nn_datastores.datastore list Uq_engines.engine
      method datastore_new_id_e : unit -> int Uq_engines.engine
      method datastore_upd_e :
        id:int ->
        identity:string ->
        size:int64 -> enabled:bool -> unit Uq_engines.engine
      method post_commit : bool -> unit
      method pre_commit : journal
      method rollback : unit -> unit
    end
  class type bm_view_t =
    object
      method blockmap_alloc_e :
        inode:int64 ->
        rpolicy:Nn_alloc_types.rpolicy ->
        index:int64 ->
        number:int ->
        pref:string list ->
        Nn_alloc_types.transacted_datastores ->
        Nn_blockmap.reserve_info -> Nn_blocklist.blocklist Uq_engines.engine
      method blockmap_allocsize : int
      method blockmap_dealloc_e :
        inode:int64 ->
        (string * int64 * int64) list -> unit Uq_engines.engine
      method blockmap_get_e :
        identity:string -> Nn_blockmap.blockmap_t Uq_engines.engine
      method blockmap_keep :
        inode:int64 -> (string * int64 * int64) list -> unit
      method blockmap_load_e : unit -> unit Uq_engines.engine
      method post_commit : bool -> unit
      method pre_commit : journal
      method rollback : unit -> unit
    end
  class type inode_view_t =
    object
      method allocinfo_get_e :
        id:int64 -> Nn_db.allocinfo list Uq_engines.engine
      method delayed_inode_deletes : int64 list
      method filename_count_e : inode:int64 -> int Uq_engines.engine
      method filename_get_e :
        dir_inode:int64 -> name:string -> int64 option Uq_engines.engine
      method filename_link_e :
        dir_inode:int64 ->
        name:string -> inode:int64 -> unit Uq_engines.engine
      method filename_list_e :
        dir_inode:int64 -> (string * int64) list Uq_engines.engine
      method filename_parent_dir_e :
        inode:int64 -> int64 option Uq_engines.engine
      method filename_rename_e :
        from_dir_inode:int64 ->
        from_name:string ->
        to_dir_inode:int64 -> to_name:string -> unit Uq_engines.engine
      method filename_rev_get_dir_e :
        inode:int64 -> (int64 * string * (unit -> unit)) Uq_engines.engine
      method filename_rev_get_e :
        inode:int64 -> (int64 * string) list Uq_engines.engine
      method filename_unlink_e :
        dir_inode:int64 -> name:string -> unit Uq_engines.engine
      method inode_alloc_e :
        Pfs_rpcapi_aux.inodeinfo -> int64 Uq_engines.engine
      method inode_dealloc_e : id:int64 -> unit Uq_engines.engine
      method inode_get_blocks_e :
        id:int64 ->
        blkidx:int64 ->
        len:int64 ->
        keep_flag:bool ->
        Nn_state.bm_view_t -> Nn_blocklist.blocklist Uq_engines.engine
      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
      method inode_upd_blocks_e :
        id:int64 ->
        del:int64 * int64 ->
        add:Nn_blocklist.blocklist ->
        set_mtime:bool -> set_blocklimit:int64 -> unit Uq_engines.engine
      method inode_upd_e :
        id:int64 ->
        keep_blocklimit:bool ->
        Pfs_rpcapi_aux.inodeinfo -> unit Uq_engines.engine
      method inode_upd_time :
        id:int64 ->
        mtime:Pfs_rpcapi_aux.time option ->
        ctime:Pfs_rpcapi_aux.time option -> unit
      method post_commit : bool -> unit
      method pre_commit : journal
      method rollback : unit -> unit
    end
  class shared_state :
    Unixqueue.event_system ->
    Nn_config.nn_node_config -> int -> string -> shared_state_t
  class ds_view : Nn_state.shared_state_t -> ds_view_t
  class bm_view : Nn_state.shared_state_t -> bm_view_t
  class inode_view : Nn_state.shared_state_t -> inode_view_t
  val encap_time : float -> Pfs_rpcapi_aux.time
end
This web site is published by Informatikbüro Gerd Stolpmann
Powered by Caml