diff --git a/src/control/cmd/dmg/pool_test.go b/src/control/cmd/dmg/pool_test.go index b877ba61e6c..071c2f1cd15 100644 --- a/src/control/cmd/dmg/pool_test.go +++ b/src/control/cmd/dmg/pool_test.go @@ -1,6 +1,6 @@ // // (C) Copyright 2019-2024 Intel Corporation. -// (C) Copyright 2025 Hewlett Packard Enterprise Development LP +// (C) Copyright 2025-2026 Hewlett Packard Enterprise Development LP // // SPDX-License-Identifier: BSD-2-Clause-Patent // @@ -771,6 +771,20 @@ func TestPoolCommands(t *testing.T) { }, " "), nil, }, + { + "Set pool properties with self_heal value 'none'", + `pool set-prop 031bcaf8-f0f5-42ef-b3c5-ee048676dceb self_heal:none,space_rb:42`, + strings.Join([]string{ + printRequest(t, &control.PoolSetPropReq{ + ID: "031bcaf8-f0f5-42ef-b3c5-ee048676dceb", + Properties: []*daos.PoolProperty{ + propWithVal("self_heal", "none"), + propWithVal("space_rb", "42"), + }, + }), + }, " "), + nil, + }, { "Set pool properties with pool flag", "pool set-prop 031bcaf8-f0f5-42ef-b3c5-ee048676dceb label:foo,space_rb:42", diff --git a/src/control/lib/daos/pool_property.go b/src/control/lib/daos/pool_property.go index bdb4117e327..e3ed427bd77 100644 --- a/src/control/lib/daos/pool_property.go +++ b/src/control/lib/daos/pool_property.go @@ -1,6 +1,6 @@ // // (C) Copyright 2021-2023 Intel Corporation. -// (C) Copyright 2025 Hewlett Packard Enterprise Development LP +// (C) Copyright 2025-2026 Hewlett Packard Enterprise Development LP // // SPDX-License-Identifier: BSD-2-Clause-Patent // @@ -53,6 +53,8 @@ func PoolProperties() PoolPropertyMap { return "not set" } switch n { + case 0: + return "none" case PoolSelfHealingAutoExclude: return "exclude" case PoolSelfHealingAutoRebuild: @@ -69,6 +71,7 @@ func PoolProperties() PoolPropertyMap { }, }, values: map[string]uint64{ + "none": 0, "exclude": PoolSelfHealingAutoExclude, "rebuild": PoolSelfHealingAutoRebuild, "delay_rebuild": PoolSelfHealingDelayRebuild, diff --git a/src/tests/suite/daos_pool.c b/src/tests/suite/daos_pool.c index a378740b7aa..51daa8670f0 100644 --- a/src/tests/suite/daos_pool.c +++ b/src/tests/suite/daos_pool.c @@ -1,5 +1,6 @@ /** * (C) Copyright 2016-2023 Intel Corporation. + * (C) Copyright 2025-2026 Hewlett Packard Enterprise Development LP * * SPDX-License-Identifier: BSD-2-Clause-Patent */ @@ -735,7 +736,7 @@ pool_op_retry(void **state) /* pool set prop success committed, "lost" reply - duplicate RPC retry */ test_set_engine_fail_loc(arg, leader_rank, DAOS_MD_OP_PASS_NOREPLY | DAOS_FAIL_ONCE); print_message("set pool prop (retry / dup rpc detection)... "); - rc = daos_pool_set_prop(arg->pool.pool_uuid, "self_heal", "rebuild"); + rc = daos_pool_set_prop(arg->pool.pool_uuid, "self_heal", "none"); assert_rc_equal(rc, 0); print_message("success\n");