- Oct 14, 2022
-
-
Alberto Miranda authored
-
Alberto Miranda authored
Similarly for ADM_storage_create(), admire::storage, admire::adhoc_storage, and admire::pfs_storage. Also, rename any references to `server_id` to just `id`.
-
Alberto Miranda authored
-
- Oct 13, 2022
-
-
Alberto Miranda authored
Resolve "The C++ API should not rely on `unique_ptr`" This MR removes the need to pass a `std::unique_ptr<admire::storage>` argument to `register_adhoc_storage` in the C++ API. Tests are also updated to reflect this change and to remove dependencies with `ADM_storage_create()`, which in the future will become an internal function. Finally, we fix some use-after-free memory management errors due to shortcomings in `managed_ctype`s and the creation function of C API types themselves. The errors are "fixed" by not deleting the data, which means that we are now effectively leaking. So that tests pass, we set `detect_leaks=0` in `ASAN_OPTIONS`. Closes #47 See merge request !42
-
Alberto Miranda authored
-
Alberto Miranda authored
-
Alberto Miranda authored
hg_proc_ADM_storage_t: encode/decode server_id
-
Alberto Miranda authored
-
Alberto Miranda authored
-
- Oct 07, 2022
-
-
Alberto Miranda authored
-
Alberto Miranda authored
Merge branch 'amiranda/69-adm_register_adhoc_storage-requires-obsolete-adm_job_t-argument' into 'main' Resolve "`ADM_register_adhoc_storage` requires obsolete `ADM_job_t` argument." Closes #69 See merge request !50
-
Alberto Miranda authored
-
Alberto Miranda authored
Resolve "Missing rpc id in log entry for `ADM_register_adhoc_storage`" Closes #68 See merge request !49
-
Alberto Miranda authored
-
Alberto Miranda authored
Resolve "API does not provide facilities to communicate job and adhoc hostnames" This MR extends the current API by introducing two new structures `ADM_job_resources_t` and `ADM_adhoc_resources_t`. - [x] `ADM_adhoc_resources_t` is renamed from `ADM_storage_resources_t` and now contains a list of nodes assigned for the adhoc storage instance (the PFS is more of a static thing, so it doesn't make sense to have a generic interface for this). An `ADM_adhoc_resources_t` argument is added to `ADM_adhoc_context_create()` and is propagated through RPCs. This allows resource managers (i.e. Slurm or the IC) to inform us about the nodes assigned for an `adhoc_storage`. - [x] A new structure `ADM_job_resources_t` is added to the API, which for now contains a list of nodes assigned to a job. An `ADM_job_resources_t` argumet is added to `ADM_register_job()` and related functions and is propagated to `scord` via RPCs. This allows resource managers to inform `scord` about the nodes assigned for a job. Closes #59 See merge request !43
-
Alberto Miranda authored
-
Alberto Miranda authored
-
- Oct 01, 2022
-
-
Alberto Miranda authored
Merge branch 'amanzano/36-refactor-library-rpc-implementation-of-admire-register_adhoc_storage' into 'main' Resolve "Refactor library RPC implementation of `admire::register_adhoc_storage`" This MR moves the implementation of the RPC construction to `admire::detail` in `impl.[ch]pp` similarly to other RPCs already refactored. This includes changing the C ADM_types to native C++ types. Closes #36 See merge request !26
-
Alberto Miranda authored
The previous automatic ID generation caused problems with the usage of adhoc_storage constructors outside RPC handler code (e.g. during conversions). It makes more sense for IDs to be assigned by a server-centric adhoc_storage_manager.
-
Alberto Miranda authored
-
ADM_register_adhoc_storage.cpp var id renamed to user_id
-
- Sep 30, 2022
- Sep 29, 2022
-
-
Alberto Miranda authored
Resolve "Add tests to verify RPC arguments." This MR implements tests to validate that RPC information is correctly transferred between clients and servers. To do that, we provide a `ci/check_rpcs.py` script that requires client and server logfiles with the requests to validate, plus a RPC name for the RPC of interest. The script parses the logfiles and verifies that their contents match. In order to implement this, we allow the logging framework to be configured using environment variables, so that it is possible to easily modify the logging output file in tests. We also augment RPC replies so that they include the operation id (`op_id`) assigned by the server, so that it is possible to match client information to server information. We also define appropriate CMake tests that run the validation script for each RPC once all the RPC tests have finished. Closes #44 #23 See merge request !31
-
Alberto Miranda authored
-
Alberto Miranda authored
-
Alberto Miranda authored
-
Alberto Miranda authored
-