Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@ src/install
# ignore vscode files
.vscode

# ignore intellij files
.idea

# ignore macos files
.DS_Store

Expand All @@ -24,4 +27,4 @@ docs/build
**/*venv

# ignore .zed
.zed
.zed
25 changes: 15 additions & 10 deletions src/api/include/pdc_client_connect.h
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,7 @@ uint32_t PDC_get_client_data_server();
perr_t PDC_Client_read_server_addr_from_file();

/**
* Client request of an obj id by sending object name
* Client request of an obj id by sending object name.
*
* \param obj_name [IN] Name of the object
* \param cont_id[IN] Container ID (obtained from metadata server)
Expand All @@ -220,32 +220,37 @@ perr_t PDC_Client_read_server_addr_from_file();
perr_t PDC_Client_send_name_recv_id(const char *obj_name, uint64_t cont_id, pdcid_t obj_create_prop,
pdcid_t *meta_id, uint32_t *data_server_id, uint32_t *metadata_server_id);

perr_t PDC_Client_transfer_request(void *buf, pdcid_t obj_id, uint32_t data_server_id, int obj_ndim,
uint64_t *obj_dims, int remote_ndim, uint64_t *remote_offset,
/**
* The bulk_handle pointer is set to the bulk handle created.
* The caller is responsible for calling HG_Bulk_free
*/
perr_t PDC_Client_transfer_request(hg_bulk_t *bulk_handle, void *buf, pdcid_t obj_id, uint32_t data_server_id,
int obj_ndim, uint64_t *obj_dims, int remote_ndim, uint64_t *remote_offset,
uint64_t *remote_size, size_t unit, pdc_access_t access_type,
pdcid_t *metadata_id);

int PDC_Client_get_var_type_size(pdc_var_type_t dtype);

perr_t PDC_Client_transfer_request_all(int n_objs, pdc_access_t access_type, uint32_t data_server_id,
char *bulk_buf, hg_size_t bulk_size, uint64_t *metadata_id,
perr_t PDC_Client_transfer_request_all(hg_bulk_t *bulk_handle, int n_objs, pdc_access_t access_type,
uint32_t data_server_id, char *bulk_buf, hg_size_t bulk_size,
uint64_t *metadata_id,
#ifdef ENABLE_MPI
MPI_Comm comm);
#else
int comm);
#endif

perr_t PDC_Client_transfer_request_metadata_query(char *buf, uint64_t total_buf_size, int n_objs,
uint32_t metadata_server_id, uint8_t is_write,
perr_t PDC_Client_transfer_request_metadata_query(hg_bulk_t *bulk_handle, char *buf, uint64_t total_buf_size,
int n_objs, uint32_t metadata_server_id, uint8_t is_write,
uint64_t *output_buf_size, uint64_t *query_id);

perr_t PDC_Client_transfer_request_metadata_query2(char *buf, uint64_t total_buf_size, uint64_t query_id,
uint32_t metadata_server_id);
perr_t PDC_Client_transfer_request_metadata_query2(hg_bulk_t *bulk_handle, char *buf, uint64_t total_buf_size,
uint64_t query_id, uint32_t metadata_server_id);

perr_t PDC_Client_transfer_request_status(pdcid_t transfer_request_id, uint32_t data_server_id,
pdc_transfer_status_t *completed);

perr_t PDC_Client_transfer_request_wait_all(int n_objs, pdcid_t *transfer_request_id,
perr_t PDC_Client_transfer_request_wait_all(hg_bulk_t *bulk_handle, int n_objs, pdcid_t *transfer_request_id,
uint32_t data_server_id);

perr_t PDC_Client_transfer_request_wait(pdcid_t transfer_request_id, uint32_t data_server_id,
Expand Down
4 changes: 2 additions & 2 deletions src/api/pdc.c
Original file line number Diff line number Diff line change
Expand Up @@ -213,8 +213,8 @@ PDCclose(pdcid_t pdcid)

pdc_id_list_g = (struct pdc_id_list *)(intptr_t)PDC_free(pdc_id_list_g);

// Finalize METADATA
PDC_Client_finalize();
if (PDC_Client_finalize() != SUCCEED)
PGOTO_ERROR(FAIL, "Error with PDC_Client_finalize");

done:
FUNC_LEAVE(ret_value);
Expand Down
35 changes: 20 additions & 15 deletions src/api/pdc_client_connect.c
Original file line number Diff line number Diff line change
Expand Up @@ -1626,13 +1626,11 @@ PDC_Client_finalize()
LOG_INFO("T_memcpy: %.2f\n", memcpy_time_g);
#endif

hg_ret = HG_Context_destroy(send_context_g);
if (hg_ret != HG_SUCCESS)
if (HG_Context_destroy(send_context_g) != HG_SUCCESS)
PGOTO_ERROR(FAIL, "Error with HG_Context_destroy");

hg_ret = HG_Finalize(send_class_g);
if (hg_ret != HG_SUCCESS)
LOG_WARNING("Error with HG_Finalize\n");
if (HG_Finalize(send_class_g) != HG_SUCCESS)
PGOTO_ERROR(FAIL, "Error with HG_Finalize");

done:
FUNC_LEAVE(ret_value);
Expand Down Expand Up @@ -2974,8 +2972,9 @@ PDC_Client_flush_obj_all()
}

perr_t
PDC_Client_transfer_request_all(int n_objs, pdc_access_t access_type, uint32_t data_server_id, char *bulk_buf,
hg_size_t bulk_size, uint64_t *metadata_id,
PDC_Client_transfer_request_all(hg_bulk_t *bulk_handle, int n_objs, pdc_access_t access_type,
uint32_t data_server_id, char *bulk_buf, hg_size_t bulk_size,
uint64_t *metadata_id,
#ifdef ENABLE_MPI
MPI_Comm comm)
#else
Expand Down Expand Up @@ -3015,8 +3014,9 @@ PDC_Client_transfer_request_all(int n_objs, pdc_access_t access_type, uint32_t d
transfer_request_all_register_id_g, &client_send_transfer_request_all_handle);

// Create bulk handles
hg_ret = HG_Bulk_create(hg_class, 1, (void **)&bulk_buf, &bulk_size, HG_BULK_READWRITE,
hg_ret = HG_Bulk_create(hg_class, 1, (void **)&bulk_buf, &bulk_size, HG_BULK_READWRITE,
&(in.local_bulk_handle));
*bulk_handle = in.local_bulk_handle;
if (hg_ret != HG_SUCCESS)
PGOTO_ERROR(FAIL, "Could not create local bulk data handle");

Expand Down Expand Up @@ -3076,8 +3076,8 @@ PDC_Client_transfer_request_all(int n_objs, pdc_access_t access_type, uint32_t d
}

perr_t
PDC_Client_transfer_request_metadata_query2(char *buf, uint64_t total_buf_size, uint64_t query_id,
uint32_t metadata_server_id)
PDC_Client_transfer_request_metadata_query2(hg_bulk_t *bulk_handle, char *buf, uint64_t total_buf_size,
uint64_t query_id, uint32_t metadata_server_id)
{
FUNC_ENTER(NULL);

Expand Down Expand Up @@ -3110,6 +3110,7 @@ PDC_Client_transfer_request_metadata_query2(char *buf, uint64_t total_buf_size,
// For sending metadata
hg_ret = HG_Bulk_create(hg_class, 1, (void **)&buf, (hg_size_t *)&(in.total_buf_size), HG_BULK_READWRITE,
&(in.local_bulk_handle));
*bulk_handle = in.local_bulk_handle;
if (hg_ret != HG_SUCCESS)
PGOTO_ERROR(FAIL, "Could not create local bulk data handle");

Expand Down Expand Up @@ -3137,8 +3138,8 @@ PDC_Client_transfer_request_metadata_query2(char *buf, uint64_t total_buf_size,
}

perr_t
PDC_Client_transfer_request_metadata_query(char *buf, uint64_t total_buf_size, int n_objs,
uint32_t metadata_server_id, uint8_t is_write,
PDC_Client_transfer_request_metadata_query(hg_bulk_t *bulk_handle, char *buf, uint64_t total_buf_size,
int n_objs, uint32_t metadata_server_id, uint8_t is_write,
uint64_t *output_buf_size, uint64_t *query_id)
{
FUNC_ENTER(NULL);
Expand Down Expand Up @@ -3174,6 +3175,7 @@ PDC_Client_transfer_request_metadata_query(char *buf, uint64_t total_buf_size, i
// For sending metadata
hg_ret = HG_Bulk_create(hg_class, 1, (void **)&buf, (hg_size_t *)&(in.total_buf_size), HG_BULK_READWRITE,
&(in.local_bulk_handle));
*bulk_handle = in.local_bulk_handle;
if (hg_ret != HG_SUCCESS)
PGOTO_ERROR(FAIL, "Could not create local bulk data handle");

Expand Down Expand Up @@ -3203,7 +3205,8 @@ PDC_Client_transfer_request_metadata_query(char *buf, uint64_t total_buf_size, i
}

perr_t
PDC_Client_transfer_request_wait_all(int n_objs, pdcid_t *transfer_request_id, uint32_t data_server_id)
PDC_Client_transfer_request_wait_all(hg_bulk_t *bulk_handle, int n_objs, pdcid_t *transfer_request_id,
uint32_t data_server_id)
{
FUNC_ENTER(NULL);

Expand Down Expand Up @@ -3238,6 +3241,7 @@ PDC_Client_transfer_request_wait_all(int n_objs, pdcid_t *transfer_request_id, u
// For sending metadata
hg_ret = HG_Bulk_create(hg_class, 1, (void **)&transfer_request_id, (hg_size_t *)&(in.total_buf_size),
HG_BULK_READWRITE, &(in.local_bulk_handle));
*bulk_handle = in.local_bulk_handle;
if (hg_ret != HG_SUCCESS)
PGOTO_ERROR(FAIL, "Could not create local bulk data handle");

Expand Down Expand Up @@ -3269,8 +3273,8 @@ PDC_Client_transfer_request_wait_all(int n_objs, pdcid_t *transfer_request_id, u
}

perr_t
PDC_Client_transfer_request(void *buf, pdcid_t obj_id, uint32_t data_server_id, int obj_ndim,
uint64_t *obj_dims, int remote_ndim, uint64_t *remote_offset,
PDC_Client_transfer_request(hg_bulk_t *bulk_handle, void *buf, pdcid_t obj_id, uint32_t data_server_id,
int obj_ndim, uint64_t *obj_dims, int remote_ndim, uint64_t *remote_offset,
uint64_t *remote_size, size_t unit, pdc_access_t access_type,
pdcid_t *metadata_id)
{
Expand Down Expand Up @@ -3328,6 +3332,7 @@ PDC_Client_transfer_request(void *buf, pdcid_t obj_id, uint32_t data_server_id,
// Create bulk handle
hg_ret = HG_Bulk_create(hg_class, 1, (void **)&buf, (hg_size_t *)&total_data_size, HG_BULK_READWRITE,
&(in.local_bulk_handle));
*bulk_handle = in.local_bulk_handle;

if (hg_ret != HG_SUCCESS)
PGOTO_ERROR(FAIL, "Could not create local bulk data handle");
Expand Down
4 changes: 3 additions & 1 deletion src/api/pdc_obj/pdc_cont.c
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,9 @@ PDCcont_create(const char *cont_name, pdcid_t cont_prop_id)
PGOTO_ERROR(0, "PDC pub container memory allocation failed");
p->cont_info_pub->name = strdup(cont_name);

id_info = PDC_find_id(cont_prop_id);
id_info = PDC_find_id(cont_prop_id);
if (id_info == NULL)
PGOTO_ERROR(0, "Failed to find cont prop using pdcid");
cont_prop = (struct _pdc_cont_prop *)(id_info->obj_ptr);

p->cont_pt = (struct _pdc_cont_prop *)PDC_calloc(1, sizeof(struct _pdc_cont_prop));
Expand Down
4 changes: 3 additions & 1 deletion src/api/pdc_obj/pdc_obj.c
Original file line number Diff line number Diff line change
Expand Up @@ -169,7 +169,9 @@ PDC_obj_create(pdcid_t cont_id, const char *obj_name, pdcid_t obj_prop_id, _pdc_
meta_id = p->cont->cont_info_pub->meta_id;
}

id_info = PDC_find_id(obj_prop_id);
id_info = PDC_find_id(obj_prop_id);
if (id_info == NULL)
PGOTO_ERROR(0, "Failed to find obj prop using pdcid");
obj_prop = (struct _pdc_obj_prop *)(id_info->obj_ptr);

/* struct _pdc_obj_prop field */
Expand Down
12 changes: 8 additions & 4 deletions src/api/pdc_obj/pdc_prop.c
Original file line number Diff line number Diff line change
Expand Up @@ -74,8 +74,10 @@ PDCprop_create(pdc_prop_type_t type, pdcid_t pdcid)
new_id_c = PDC_id_register(PDC_CONT_PROP, p);
p->cont_prop_id = new_id_c;
id_info = PDC_find_id(pdcid);
pdc_class = (struct _pdc_class *)(id_info->obj_ptr);
p->pdc = (struct _pdc_class *)PDC_calloc(1, sizeof(struct _pdc_class));
if (id_info == NULL)
PGOTO_ERROR(0, "Failed to find prop using pdcid");
pdc_class = (struct _pdc_class *)(id_info->obj_ptr);
p->pdc = (struct _pdc_class *)PDC_calloc(1, sizeof(struct _pdc_class));
if (p->pdc == NULL)
PGOTO_ERROR(0, "PDC class allocation failed");
if (pdc_class->name)
Expand Down Expand Up @@ -105,8 +107,10 @@ PDCprop_create(pdc_prop_type_t type, pdcid_t pdcid)
new_id_o = PDC_id_register(PDC_OBJ_PROP, q);
q->obj_prop_pub->obj_prop_id = new_id_o;
id_info = PDC_find_id(pdcid);
pdc_class = (struct _pdc_class *)(id_info->obj_ptr);
q->pdc = (struct _pdc_class *)PDC_calloc(1, sizeof(struct _pdc_class));
if (id_info == NULL)
PGOTO_ERROR(0, "Failed to find pdc obj using pdcid");
pdc_class = (struct _pdc_class *)(id_info->obj_ptr);
q->pdc = (struct _pdc_class *)PDC_calloc(1, sizeof(struct _pdc_class));
if (q->pdc == NULL)
PGOTO_ERROR(0, "PDC class allocation failed");
if (pdc_class->name)
Expand Down
Loading
Loading