Motr  M0
req.h File Reference
#include "fid/fid.h"
#include "sm/sm.h"
#include "pool/pool_machine.h"
#include "dix/layout.h"
#include "dix/req_internal.h"
Include dependency graph for req.h:

Go to the source code of this file.

Data Structures

struct  m0_dix
 
struct  m0_dix_next_sort_ctx
 
struct  m0_dix_next_sort_ctx_arr
 
struct  m0_dix_next_results
 
struct  m0_dix_next_resultset
 
struct  m0_dix_req
 
struct  m0_dix_get_reply
 
struct  m0_dix_next_reply
 

Macros

#define __MOTR_DIX_REQ_H__
 

Enumerations

enum  m0_dix_req_state {
  DIXREQ_INVALID, DIXREQ_INIT, DIXREQ_LAYOUT_DISCOVERY, DIXREQ_LID_DISCOVERY,
  DIXREQ_DISCOVERY_DONE, DIXREQ_META_UPDATE, DIXREQ_INPROGRESS, DIXREQ_GET_RESEND,
  DIXREQ_DEL_PHASE2, DIXREQ_FINAL, DIXREQ_FAILURE, DIXREQ_NR
}
 
enum  dix_req_type {
  DIX_CREATE, DIX_CCTGS_LOOKUP, DIX_DELETE, DIX_NEXT,
  DIX_GET, DIX_PUT, DIX_DEL
}
 

Functions

M0_INTERNAL void m0_dix_req_init (struct m0_dix_req *req, struct m0_dix_cli *cli, struct m0_sm_group *grp)
 
M0_INTERNAL void m0_dix_mreq_init (struct m0_dix_req *req, struct m0_dix_cli *cli, struct m0_sm_group *grp)
 
M0_INTERNAL void m0_dix_req_lock (struct m0_dix_req *req)
 
M0_INTERNAL void m0_dix_req_unlock (struct m0_dix_req *req)
 
M0_INTERNAL bool m0_dix_req_is_locked (const struct m0_dix_req *req)
 
M0_INTERNAL int m0_dix_req_wait (struct m0_dix_req *req, uint64_t states, m0_time_t to)
 
M0_INTERNAL int m0_dix_create (struct m0_dix_req *req, const struct m0_dix *indices, uint32_t indices_nr, struct m0_dtx *dtx, uint32_t flags)
 
M0_INTERNAL int m0_dix_cctgs_lookup (struct m0_dix_req *req, const struct m0_dix *indices, uint32_t indices_nr)
 
M0_INTERNAL int m0_dix_delete (struct m0_dix_req *req, const struct m0_dix *indices, uint64_t indices_nr, struct m0_dtx *dtx, uint32_t flags)
 
M0_INTERNAL int m0_dix_put (struct m0_dix_req *req, const struct m0_dix *index, const struct m0_bufvec *keys, const struct m0_bufvec *vals, struct m0_dtx *dtx, uint32_t flags)
 
M0_INTERNAL int m0_dix_get (struct m0_dix_req *req, const struct m0_dix *index, const struct m0_bufvec *keys)
 
M0_INTERNAL void m0_dix_get_rep (const struct m0_dix_req *req, uint64_t idx, struct m0_dix_get_reply *rep)
 
M0_INTERNAL int m0_dix_del (struct m0_dix_req *req, const struct m0_dix *index, const struct m0_bufvec *keys, struct m0_dtx *dtx, uint32_t flags)
 
M0_INTERNAL int m0_dix_next (struct m0_dix_req *req, const struct m0_dix *index, const struct m0_bufvec *start_keys, const uint32_t *recs_nr, uint32_t flags)
 
M0_INTERNAL void m0_dix_next_rep (const struct m0_dix_req *req, uint64_t key_idx, uint64_t val_idx, struct m0_dix_next_reply *rep)
 
void m0_dix_req_cancel (struct m0_dix_req *dreq)
 
M0_INTERNAL uint32_t m0_dix_next_rep_nr (const struct m0_dix_req *req, uint64_t key_idx)
 
M0_INTERNAL void m0_dix_next_rep_mlock (struct m0_dix_req *req, uint32_t key_idx, uint32_t val_idx)
 
M0_INTERNAL int m0_dix_generic_rc (const struct m0_dix_req *req)
 
M0_INTERNAL int m0_dix_item_rc (const struct m0_dix_req *req, uint64_t idx)
 
M0_INTERNAL int m0_dix_req_rc (const struct m0_dix_req *req)
 
M0_INTERNAL uint64_t m0_dix_req_nr (const struct m0_dix_req *req)
 
M0_INTERNAL void m0_dix_get_rep_mlock (struct m0_dix_req *req, uint64_t idx)
 
M0_INTERNAL void m0_dix_req_fini (struct m0_dix_req *req)
 
M0_INTERNAL void m0_dix_req_fini_lock (struct m0_dix_req *req)
 
M0_INTERNAL int m0_dix_desc_set (struct m0_dix *dix, const struct m0_dix_ldesc *desc)
 
M0_INTERNAL int m0_dix_copy (struct m0_dix *dst, const struct m0_dix *src)
 
M0_INTERNAL void m0_dix_fini (struct m0_dix *dix)
 
M0_INTERNAL int m0_dix_sm_conf_init (void)
 
M0_INTERNAL void m0_dix_sm_conf_fini (void)
 

Variables

enum dix_req_type M0_XCA_ENUM
 

Macro Definition Documentation

◆ __MOTR_DIX_REQ_H__

#define __MOTR_DIX_REQ_H__

Definition at line 26 of file req.h.