-
Notifications
You must be signed in to change notification settings - Fork 306
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
DAOS-11498 mgmt: Fix PS replica leaks
For each pool, the PS ranks stored on the MS may not cover all PS replicas, in and out of the latest PS membership. The PS may have not been able to send the latest PS ranks to the MS. Or, it may have been unable to destroy some PS replicas after removing them from the membership. The ds_mgmt_destroy_pool function currently only destroys the PS replicas in the latest membership known to the MS, leaking any other PS replicas. This patch removes the step that only destroys the known PS replicas, combines it with the target destroy CoRPC, and attempts to stop any PS replicas on all PS engines. Note that the RDB files shall be deleted along with other pool files. And, ds_pool_svc_create is renamed to ds_pool_svc_dist_create to avoid confusion. We then have a few interesting directions to explore? - Try releasing local pool handles and associated data structures (e.g., container handles) when destroy targets for a force-destroy operation. - Allow force-destroy to blindly, repeatedly attempt to destroy a pool, because it no longer needs to know what the PS ranks are and may go straightly to the target destroy CoRPC without contacting the PS, who may have already become unavailable due to previous destroy attempts. Additionally, this patch fixes an unrelated assertion failure in ds_mgmt_group_update that has happened during its CI testing: mgmt EMRG src/mgmt/srv_util.c:33 ds_mgmt_group_update() Assertion 'version_current < version' failed: 10 < 9 Signed-off-by: Li Wei <[email protected]> Required-githooks: true
- Loading branch information
Showing
8 changed files
with
51 additions
and
81 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters