69 printf(
"Failed to create object: %d\n",
rc);
86 printf(
"Object (id=%lu) creation result: %d\n",
98 printf(
"Failed to open object: %d\n",
rc);
114 printf(
"Object (id=%lu) open result: %d\n",
122 uint32_t block_count,
153 uint32_t block_count,
155 uint64_t *last_index,
160 for (
i = 0;
i < block_count; ++
i) {
163 *last_index += block_size;
168 attr->ov_vec.v_count[
i] = 0;
193 printf(
"Failed to init a write op\n");
205 rc =
rc ? :
ops[0]->op_sm.sm_rc;
210 printf(
"Object write result: %d\n",
rc);
224 uint64_t last_offset = 0;
233 printf(
"Failed to open object: rc=%d\n",
rc);
242 printf(
"Failed to alloc ext & data & attr: %d\n",
rc);
255 printf(
"Object write: %d\n",
rc);
270 printf(
"Failed to init a read op\n");
282 rc =
rc ? :
ops[0]->op_sm.sm_rc;
287 printf(
"Object read result: %d\n",
rc);
297 printf(
"Block %6d:\n",
i);
303 printf(
"verification failed at: %d:%d\n" 304 "Expected %c result %c\n",
320 uint64_t last_offset = 0;
329 printf(
"Failed to open object: rc=%d\n",
rc);
338 printf(
"Failed to alloc ext & data & attr: %d\n",
rc);
354 printf(
"Object read: %d\n",
rc);
372 printf(
"Failed to open object: rc=%d\n",
rc);
389 printf(
"Object deletion: %d\n",
rc);
394 int main(
int argc,
char *argv[])
399 printf(
"%s HA_ADDR LOCAL_ADDR Profile_fid Process_fid obj_id\n",
405 printf(
"obj_id invalid. Please refer to M0_ID_APP " 406 "in motr/client.c\n");
425 printf(
"error in m0_client_init: %d\n",
rc);
432 printf(
"error in m0_container_init: %d\n",
rc);
447 printf(
"app completed: %d\n",
rc);
static int object_open(struct m0_obj *obj)
static int read_data_from_object(struct m0_obj *obj, struct m0_indexvec *ext, struct m0_bufvec *data, struct m0_bufvec *attr)
static int alloc_vecs(struct m0_indexvec *ext, struct m0_bufvec *data, struct m0_bufvec *attr, uint32_t block_count, uint32_t block_size)
void m0_entity_fini(struct m0_entity *entity)
static int object_create(struct m0_container *container)
M0_INTERNAL int m0_indexvec_alloc(struct m0_indexvec *ivec, uint32_t len)
const char * mc_process_fid
static void cleanup_vecs(struct m0_indexvec *ext, struct m0_bufvec *data, struct m0_bufvec *attr)
const m0_time_t M0_TIME_NEVER
void m0_op_fini(struct m0_op *op)
struct m0_container container
void m0_client_fini(struct m0_client *m0c, bool fini_m0)
uint64_t m0_client_layout_id(const struct m0_client *instance)
M0_INTERNAL void m0_indexvec_free(struct m0_indexvec *ivec)
int m0_client_init(struct m0_client **m0c, struct m0_config *conf, bool init_m0)
const struct m0_uint128 M0_UBER_REALM
static int object_delete(struct m0_container *container)
const struct m0_uint128 M0_ID_APP
M0_INTERNAL int m0_bufvec_alloc(struct m0_bufvec *bufvec, uint32_t num_segs, m0_bcount_t seg_size)
int32_t m0_op_wait(struct m0_op *op, uint64_t bits, m0_time_t to)
int m0_obj_op(struct m0_obj *obj, enum m0_obj_opcode opcode, struct m0_indexvec *ext, struct m0_bufvec *data, struct m0_bufvec *attr, uint64_t mask, uint32_t flags, struct m0_op **op)
static struct m0_idx_dix_config motr_dix_conf
M0_INTERNAL void m0_bufvec_free(struct m0_bufvec *bufvec)
static void attr(struct m0_addb2__context *ctx, const uint64_t *v, char *buf)
static void prepare_ext_vecs(struct m0_indexvec *ext, struct m0_bufvec *data, struct m0_bufvec *attr, uint32_t block_count, uint32_t block_size, uint64_t *last_index, char c)
struct m0_entity re_entity
static struct m0_container motr_container
static struct m0_addb2_callback c
static void verify_show_data(struct m0_bufvec *data, char c)
void m0_op_launch(struct m0_op **op, uint32_t nr)
static struct m0_config motr_conf
static int object_read(struct m0_container *container)
static int write_data_to_object(struct m0_obj *obj, struct m0_indexvec *ext, struct m0_bufvec *data, struct m0_bufvec *attr)
void * mc_idx_service_conf
int m0_entity_create(struct m0_fid *pool, struct m0_entity *entity, struct m0_op **op)
int main(int argc, char *argv[])
uint32_t mc_max_rpc_msg_size
const char * mc_local_addr
static int object_write(struct m0_container *container)
uint32_t mc_tm_recv_queue_min_len
void m0_obj_init(struct m0_obj *obj, struct m0_realm *parent, const struct m0_uint128 *id, uint64_t layout_id)
static struct m0 instance
int m0_entity_delete(struct m0_entity *entity, struct m0_op **op)
void m0_container_init(struct m0_container *con, struct m0_realm *parent, const struct m0_uint128 *id, struct m0_client *instance)
struct m0_client * re_instance
void m0_op_free(struct m0_op *op)
int m0_entity_open(struct m0_entity *entity, struct m0_op **op)