From 984624ee94417d20b051220d7598071a854bab23 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Tue, 13 May 2025 09:48:38 -0700 Subject: [PATCH 1/8] add option to connect to a given network interface --- src/api/pdc_client_connect.c | 11 +++++++---- src/server/pdc_server.c | 11 +++++++---- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/src/api/pdc_client_connect.c b/src/api/pdc_client_connect.c index 50e299565..c2bf4cad7 100644 --- a/src/api/pdc_client_connect.c +++ b/src/api/pdc_client_connect.c @@ -1354,7 +1354,7 @@ PDC_Client_mercury_init(hg_class_t **hg_class, hg_context_t **hg_context, int po { perr_t ret_value = SUCCEED; char na_info_string[NA_STRING_INFO_LEN]; - char hostname[HOSTNAME_LEN]; + char* hostname; int local_server_id; /* Set the default mercury transport * but enable overriding that to any of: @@ -1378,11 +1378,14 @@ PDC_Client_mercury_init(hg_class_t **hg_class, hg_context_t **hg_context, int po if ((hg_transport = getenv("HG_TRANSPORT")) == NULL) { hg_transport = default_hg_transport; } - memset(hostname, 0, sizeof(hostname)); - gethostname(hostname, sizeof(hostname)); + if ((hostname = getenv("HG_HOST")) == NULL) { + hostname = malloc(HOSTNAME_LEN); + memset(hostname, 0, HOSTNAME_LEN); + gethostname(hostname, HOSTNAME_LEN - 1); + } sprintf(na_info_string, "%s://%s:%d", hg_transport, hostname, port); if (pdc_client_mpi_rank_g == 0) { - LOG_INFO("==PDC_CLIENT: using %.7s\n", na_info_string); + LOG_INFO("==PDC_CLIENT: using %s\n", na_info_string); fflush(stdout); } diff --git a/src/server/pdc_server.c b/src/server/pdc_server.c index 7ec555db9..24aafcc12 100644 --- a/src/server/pdc_server.c +++ b/src/server/pdc_server.c @@ -783,7 +783,7 @@ PDC_Server_init(int port, hg_class_t **hg_class, hg_context_t **hg_context) int i = 0; char self_addr_string[ADDR_MAX]; char na_info_string[NA_STRING_INFO_LEN]; - char hostname[HOSTNAME_LEN]; + char* hostname; struct hg_init_info init_info = {0}; /* Set the default mercury transport @@ -817,11 +817,14 @@ PDC_Server_init(int port, hg_class_t **hg_class, hg_context_t **hg_context) if ((hg_transport = getenv("HG_TRANSPORT")) == NULL) { hg_transport = default_hg_transport; } - memset(hostname, 0, HOSTNAME_LEN); - gethostname(hostname, HOSTNAME_LEN - 1); + if ((hostname = getenv("HG_HOST")) == NULL) { + hostname = malloc(HOSTNAME_LEN); + memset(hostname, 0, HOSTNAME_LEN); + gethostname(hostname, HOSTNAME_LEN - 1); + } snprintf(na_info_string, NA_STRING_INFO_LEN, "%s://%s:%d", hg_transport, hostname, port); if (pdc_server_rank_g == 0) - LOG_INFO("==PDC_SERVER[%d]: using %.7s\n", pdc_server_rank_g, na_info_string); + LOG_INFO("==PDC_SERVER[%d]: using %s\n", pdc_server_rank_g, na_info_string); // Clean up all the tmp files etc HG_Cleanup(); From 1c7c8e4263ad9ba04faf96abbeaef7cfe6ce553b Mon Sep 17 00:00:00 2001 From: github-actions Date: Tue, 13 May 2025 16:49:05 +0000 Subject: [PATCH 2/8] Committing clang-format changes --- src/api/pdc_client_connect.c | 2 +- src/server/pdc_server.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/api/pdc_client_connect.c b/src/api/pdc_client_connect.c index c2bf4cad7..81a89b28d 100644 --- a/src/api/pdc_client_connect.c +++ b/src/api/pdc_client_connect.c @@ -1354,7 +1354,7 @@ PDC_Client_mercury_init(hg_class_t **hg_class, hg_context_t **hg_context, int po { perr_t ret_value = SUCCEED; char na_info_string[NA_STRING_INFO_LEN]; - char* hostname; + char * hostname; int local_server_id; /* Set the default mercury transport * but enable overriding that to any of: diff --git a/src/server/pdc_server.c b/src/server/pdc_server.c index 24aafcc12..22546f4b1 100644 --- a/src/server/pdc_server.c +++ b/src/server/pdc_server.c @@ -783,7 +783,7 @@ PDC_Server_init(int port, hg_class_t **hg_class, hg_context_t **hg_context) int i = 0; char self_addr_string[ADDR_MAX]; char na_info_string[NA_STRING_INFO_LEN]; - char* hostname; + char * hostname; struct hg_init_info init_info = {0}; /* Set the default mercury transport From 98ff6967b1e9186a44c80cedd7ce343a360f2bad Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Tue, 13 May 2025 11:23:02 -0700 Subject: [PATCH 3/8] fix conflict --- src/api/pdc_client_connect.c | 5 +++++ src/server/pdc_server.c | 7 ++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/api/pdc_client_connect.c b/src/api/pdc_client_connect.c index 81a89b28d..5bb2949b4 100644 --- a/src/api/pdc_client_connect.c +++ b/src/api/pdc_client_connect.c @@ -1382,6 +1382,8 @@ PDC_Client_mercury_init(hg_class_t **hg_class, hg_context_t **hg_context, int po hostname = malloc(HOSTNAME_LEN); memset(hostname, 0, HOSTNAME_LEN); gethostname(hostname, HOSTNAME_LEN - 1); + } else { + find_hostname = false; } sprintf(na_info_string, "%s://%s:%d", hg_transport, hostname, port); if (pdc_client_mpi_rank_g == 0) { @@ -1389,6 +1391,9 @@ PDC_Client_mercury_init(hg_class_t **hg_class, hg_context_t **hg_context, int po fflush(stdout); } + if (find_hostname) + free(hostname); + // gni starts here #ifdef PDC_HAS_CRAY_DRC /* Acquire credential */ diff --git a/src/server/pdc_server.c b/src/server/pdc_server.c index 22546f4b1..32bf8d8f6 100644 --- a/src/server/pdc_server.c +++ b/src/server/pdc_server.c @@ -818,14 +818,19 @@ PDC_Server_init(int port, hg_class_t **hg_class, hg_context_t **hg_context) hg_transport = default_hg_transport; } if ((hostname = getenv("HG_HOST")) == NULL) { - hostname = malloc(HOSTNAME_LEN); + hostname = PDC_malloc(HOSTNAME_LEN); memset(hostname, 0, HOSTNAME_LEN); gethostname(hostname, HOSTNAME_LEN - 1); + } else { + find_hostname = false; } snprintf(na_info_string, NA_STRING_INFO_LEN, "%s://%s:%d", hg_transport, hostname, port); if (pdc_server_rank_g == 0) LOG_INFO("==PDC_SERVER[%d]: using %s\n", pdc_server_rank_g, na_info_string); + if (find_hostname) + free(hostname); + // Clean up all the tmp files etc HG_Cleanup(); From 3444e345e65d10c13d1557f63798442ca1651481 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Tue, 13 May 2025 11:23:30 -0700 Subject: [PATCH 4/8] fix conflict --- src/api/pdc_client_connect.c | 11 ++++++----- src/server/pdc_server.c | 9 +++++---- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/src/api/pdc_client_connect.c b/src/api/pdc_client_connect.c index 5bb2949b4..f772b23d5 100644 --- a/src/api/pdc_client_connect.c +++ b/src/api/pdc_client_connect.c @@ -1354,7 +1354,11 @@ PDC_Client_mercury_init(hg_class_t **hg_class, hg_context_t **hg_context, int po { perr_t ret_value = SUCCEED; char na_info_string[NA_STRING_INFO_LEN]; +<<<<<<< HEAD char * hostname; +======= + char* hostname; +>>>>>>> c74a2853 (free hostname) int local_server_id; /* Set the default mercury transport * but enable overriding that to any of: @@ -1379,11 +1383,9 @@ PDC_Client_mercury_init(hg_class_t **hg_class, hg_context_t **hg_context, int po hg_transport = default_hg_transport; } if ((hostname = getenv("HG_HOST")) == NULL) { - hostname = malloc(HOSTNAME_LEN); + hostname = PDC_malloc(HOSTNAME_LEN); memset(hostname, 0, HOSTNAME_LEN); gethostname(hostname, HOSTNAME_LEN - 1); - } else { - find_hostname = false; } sprintf(na_info_string, "%s://%s:%d", hg_transport, hostname, port); if (pdc_client_mpi_rank_g == 0) { @@ -1391,8 +1393,7 @@ PDC_Client_mercury_init(hg_class_t **hg_class, hg_context_t **hg_context, int po fflush(stdout); } - if (find_hostname) - free(hostname); + free(hostname); // gni starts here #ifdef PDC_HAS_CRAY_DRC diff --git a/src/server/pdc_server.c b/src/server/pdc_server.c index 32bf8d8f6..5834867fd 100644 --- a/src/server/pdc_server.c +++ b/src/server/pdc_server.c @@ -783,7 +783,11 @@ PDC_Server_init(int port, hg_class_t **hg_class, hg_context_t **hg_context) int i = 0; char self_addr_string[ADDR_MAX]; char na_info_string[NA_STRING_INFO_LEN]; +<<<<<<< HEAD char * hostname; +======= + char* hostname; +>>>>>>> c74a2853 (free hostname) struct hg_init_info init_info = {0}; /* Set the default mercury transport @@ -821,15 +825,12 @@ PDC_Server_init(int port, hg_class_t **hg_class, hg_context_t **hg_context) hostname = PDC_malloc(HOSTNAME_LEN); memset(hostname, 0, HOSTNAME_LEN); gethostname(hostname, HOSTNAME_LEN - 1); - } else { - find_hostname = false; } snprintf(na_info_string, NA_STRING_INFO_LEN, "%s://%s:%d", hg_transport, hostname, port); if (pdc_server_rank_g == 0) LOG_INFO("==PDC_SERVER[%d]: using %s\n", pdc_server_rank_g, na_info_string); - if (find_hostname) - free(hostname); + free(hostname); // Clean up all the tmp files etc HG_Cleanup(); From 42d64a7970954a5f35429ed1999faa9e1e6983cc Mon Sep 17 00:00:00 2001 From: github-actions Date: Tue, 13 May 2025 18:24:09 +0000 Subject: [PATCH 5/8] Committing clang-format changes --- src/api/pdc_client_connect.c | 2 +- src/server/pdc_server.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/api/pdc_client_connect.c b/src/api/pdc_client_connect.c index f772b23d5..859c9e3af 100644 --- a/src/api/pdc_client_connect.c +++ b/src/api/pdc_client_connect.c @@ -1357,7 +1357,7 @@ PDC_Client_mercury_init(hg_class_t **hg_class, hg_context_t **hg_context, int po <<<<<<< HEAD char * hostname; ======= - char* hostname; + char *hostname; >>>>>>> c74a2853 (free hostname) int local_server_id; /* Set the default mercury transport diff --git a/src/server/pdc_server.c b/src/server/pdc_server.c index 5834867fd..ffe824d67 100644 --- a/src/server/pdc_server.c +++ b/src/server/pdc_server.c @@ -786,7 +786,7 @@ PDC_Server_init(int port, hg_class_t **hg_class, hg_context_t **hg_context) <<<<<<< HEAD char * hostname; ======= - char* hostname; + char *hostname; >>>>>>> c74a2853 (free hostname) struct hg_init_info init_info = {0}; From cffa048b050359085028af59637c03e02296c4f8 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Tue, 13 May 2025 11:28:45 -0700 Subject: [PATCH 6/8] fix conflict --- src/server/pdc_server.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/server/pdc_server.c b/src/server/pdc_server.c index ffe824d67..1fa319424 100644 --- a/src/server/pdc_server.c +++ b/src/server/pdc_server.c @@ -783,11 +783,7 @@ PDC_Server_init(int port, hg_class_t **hg_class, hg_context_t **hg_context) int i = 0; char self_addr_string[ADDR_MAX]; char na_info_string[NA_STRING_INFO_LEN]; -<<<<<<< HEAD char * hostname; -======= - char *hostname; ->>>>>>> c74a2853 (free hostname) struct hg_init_info init_info = {0}; /* Set the default mercury transport From 4057f4c97794917fc32dca94449d9da82442f6a4 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Tue, 13 May 2025 11:39:49 -0700 Subject: [PATCH 7/8] include header --- src/api/pdc_client_connect.c | 5 +---- src/server/pdc_server.c | 1 + 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/api/pdc_client_connect.c b/src/api/pdc_client_connect.c index 859c9e3af..4a0bc0d08 100644 --- a/src/api/pdc_client_connect.c +++ b/src/api/pdc_client_connect.c @@ -43,6 +43,7 @@ #include "pdc_transforms_common.h" #include "pdc_client_connect.h" #include "pdc_logger.h" +#include "pdc_malloc.h" #include "mercury.h" #include "mercury_macros.h" @@ -1354,11 +1355,7 @@ PDC_Client_mercury_init(hg_class_t **hg_class, hg_context_t **hg_context, int po { perr_t ret_value = SUCCEED; char na_info_string[NA_STRING_INFO_LEN]; -<<<<<<< HEAD char * hostname; -======= - char *hostname; ->>>>>>> c74a2853 (free hostname) int local_server_id; /* Set the default mercury transport * but enable overriding that to any of: diff --git a/src/server/pdc_server.c b/src/server/pdc_server.c index 1fa319424..847c7d075 100644 --- a/src/server/pdc_server.c +++ b/src/server/pdc_server.c @@ -58,6 +58,7 @@ #include "pdc_server_region_cache.h" #include "pdc_server_region_transfer_metadata_query.h" #include "pdc_logger.h" +#include "pdc_malloc.h" #ifdef PDC_HAS_CRAY_DRC #include From b539e75d330f62b162628cc982b0b328f0d13ab3 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Thu, 15 May 2025 11:57:37 -0700 Subject: [PATCH 8/8] enable output on failure --- .github/workflows/macos.yml | 2 +- .github/workflows/ubuntu-cache.yml | 2 +- .github/workflows/ubuntu-no-cache.yaml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index a7c4ecbb6..075dad47b 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -33,4 +33,4 @@ jobs: sudo sh -c 'echo "`ipconfig getifaddr en0` PDC" >> /etc/hosts' sudo scutil --set HostName PDC export HG_TRANSPORT="sockets" - ctest -L serial + ctest -L serial --output-on-failure diff --git a/.github/workflows/ubuntu-cache.yml b/.github/workflows/ubuntu-cache.yml index b19896a2b..1b4cdcb68 100644 --- a/.github/workflows/ubuntu-cache.yml +++ b/.github/workflows/ubuntu-cache.yml @@ -28,4 +28,4 @@ jobs: - name: Test PDC working-directory: build - run: ctest -L serial + run: ctest -L serial --output-on-failure diff --git a/.github/workflows/ubuntu-no-cache.yaml b/.github/workflows/ubuntu-no-cache.yaml index 805c54f3f..fe284d118 100644 --- a/.github/workflows/ubuntu-no-cache.yaml +++ b/.github/workflows/ubuntu-no-cache.yaml @@ -28,4 +28,4 @@ jobs: - name: Test PDC working-directory: build - run: ctest -L serial + run: ctest -L serial --output-on-failure