Skip to content

Commit

Permalink
DAOS-15672 rebuild: Fix pool destroy hangs
Browse files Browse the repository at this point in the history
See the Jira ticket for the long story. When releasing resources, for
instance, for stopping a pool, we should attempt on all targets, because
the latest version of the pool map may differ from the version used to
acquire the resources. (And in some cases, we no longer have the
original pool map version in the context.)

Signed-off-by: Li Wei <wei.g.li@intel.com>
Required-githooks: true
  • Loading branch information
liw committed Apr 18, 2024
1 parent 51f4fca commit 6df2053
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 4 deletions.
3 changes: 1 addition & 2 deletions src/container/srv_target.c
Original file line number Diff line number Diff line change
Expand Up @@ -1823,8 +1823,7 @@ ds_cont_tgt_close(uuid_t pool_uuid, uuid_t hdl_uuid)

uuid_copy(arg.uuid, hdl_uuid);

return ds_pool_thread_collective(pool_uuid, PO_COMP_ST_NEW | PO_COMP_ST_DOWN |
PO_COMP_ST_DOWNOUT, cont_close_one_hdl, &arg, 0);
return ds_pool_thread_collective(pool_uuid, 0, cont_close_one_hdl, &arg, 0);
}

struct xstream_cont_query {
Expand Down
3 changes: 1 addition & 2 deletions src/object/srv_obj_migrate.c
Original file line number Diff line number Diff line change
Expand Up @@ -3162,8 +3162,7 @@ ds_migrate_stop(struct ds_pool *pool, unsigned int version, unsigned int generat
arg.version = version;
arg.generation = generation;

rc = ds_pool_thread_collective(pool->sp_uuid, PO_COMP_ST_NEW | PO_COMP_ST_DOWN |
PO_COMP_ST_DOWNOUT, migrate_fini_one_ult, &arg, 0);
rc = ds_pool_thread_collective(pool->sp_uuid, 0, migrate_fini_one_ult, &arg, 0);
if (rc)
D_ERROR(DF_UUID" migrate stop: %d\n", DP_UUID(pool->sp_uuid), rc);

Expand Down

0 comments on commit 6df2053

Please sign in to comment.