Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion src/tests/ftest/aggregation/multiple_pool_cont.py
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@ def longrun_aggregation(self, total_pools=1, total_containers_per_pool=1):
job_manager = get_job_manager(self, subprocess=False, timeout=self.get_remaining_time())
# Create requested pools
self.pool = [self.get_pool(connect=False) for _ in range(total_pools)]
self.container = []
start_time = time.time()
while int(finish_time - start_time) < int(total_runtime):
# Since the transfer size is 1M, the objects will be inserted
Expand All @@ -95,7 +96,8 @@ def longrun_aggregation(self, total_pools=1, total_containers_per_pool=1):
# Disable the aggregation
pool.set_property("reclaim", "disabled")
# Create the containers requested per pool
self.add_container_qty(total_containers_per_pool, pool)
self.container.extend(
self.get_container(pool) for _ in range(total_containers_per_pool))

# Run ior on each container sequentially
for idx in [1, 2]:
Expand Down
2 changes: 1 addition & 1 deletion src/tests/ftest/container/api_basic_attribute.py
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ def prepare_attribute_test(self):
"""Prepare variables needed for the tests.
"""
self.pool = self.get_pool()
self.add_container(self.pool)
self.container = self.get_container(self.pool)
self.container.open()

expected_for_param = []
Expand Down
2 changes: 1 addition & 1 deletion src/tests/ftest/container/destroy.py
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ def test_container_destroy(self):

# Create a pool and a container.
self.pool = self.get_pool()
self.add_container(pool=self.pool)
self.container = self.get_container(self.pool)

# Open the container if required
if open_container:
Expand Down
2 changes: 1 addition & 1 deletion src/tests/ftest/container/full_pool_container_create.py
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ def test_no_space_cont_create(self):
self.log.info("%s query data: %s\n", str(self.pool), self.pool.query_data)

# create a container
self.add_container(self.pool)
self.container = self.get_container(self.pool)
self.container.open()

# get free space before write
Expand Down
3 changes: 2 additions & 1 deletion src/tests/ftest/container/open.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
'''
(C) Copyright 2018-2023 Intel Corporation.
(C) Copyright 2026 Hewlett Packard Enterprise Development LP

SPDX-License-Identifier: BSD-2-Clause-Patent
'''
Expand Down Expand Up @@ -90,7 +91,7 @@ def test_container_open(self):
container_uuids = []
for _ in range(2):
self.pool.append(self.get_pool())
self.container.append(self.get_container(pool=self.pool[-1]))
self.container.append(self.get_container(self.pool[-1]))
container_uuids.append(uuid.UUID(self.container[-1].uuid))

# Decide which pool handle and container UUID to use. The PASS/FAIL
Expand Down
2 changes: 1 addition & 1 deletion src/tests/ftest/container/per_server_fault_domain.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ def verify_per_server_fault(self, create_pool, ranks_to_stop, properties,
# container property.
if create_pool:
self.pool = self.get_pool()
self.container = self.get_container(pool=self.pool, properties=properties)
self.container = self.get_container(self.pool, properties=properties)

# Run IOR to write some data to the container.
self.ior_cmd.set_daos_params(self.pool, self.container.identifier)
Expand Down
2 changes: 1 addition & 1 deletion src/tests/ftest/control/daos_object_query.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ def test_object_query(self):
# Create a pool and a container. Specify --oclass, which will be used
# when writing object.
self.pool = self.get_pool()
self.add_container(self.pool)
self.container = self.get_container(self.pool)
self.pool.connect()
self.container.open(pool_handle=self.pool.pool.handle.value)

Expand Down
2 changes: 1 addition & 1 deletion src/tests/ftest/control/daos_snapshot.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ class DaosSnapshotTest(TestWithServers):
def prepare_pool_container(self):
"""Create a pool and a container and prepare for the test cases."""
self.pool = self.get_pool(connect=False)
self.add_container(self.pool)
self.container = self.get_container(self.pool)

def create_verify_snapshots(self, count):
"""Create and list to verify that the snapshots are created.
Expand Down
2 changes: 1 addition & 1 deletion src/tests/ftest/control/dmg_telemetry_io_basic.py
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ def test_io_telemetry_metrics_basic(self):
TelemetryUtils.ENGINE_IO_OPS_UPDATE_ACTIVE_METRICS
loop = 0
self.pool = self.get_pool(connect=False)
self.add_container(pool=self.pool)
self.container = self.get_container(self.pool)
metrics_data = {}
for block_size in block_sizes:
for transfer_size in transfer_sizes:
Expand Down
4 changes: 2 additions & 2 deletions src/tests/ftest/deployment/agent_failure.py
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ def test_agent_failure(self):
"""
# 1. Create a pool and a container.
self.pool = self.get_pool()
self.add_container(self.pool)
self.container = self.get_container(self.pool)

# 2. Run IOR.
ior_results = {}
Expand Down Expand Up @@ -175,7 +175,7 @@ def test_agent_failure_isolation(self):
"""
# 1. Create a pool and a container.
self.pool = self.get_pool()
self.add_container(self.pool)
self.container = self.get_container(self.pool)

# Use the last two agent hosts, since the first is likely the test runner node
agent_hosts = self.agent_managers[0].hosts
Expand Down
8 changes: 4 additions & 4 deletions src/tests/ftest/deployment/network_failure.py
Original file line number Diff line number Diff line change
Expand Up @@ -185,7 +185,7 @@ def verify_network_failure(self, ior_namespace, container_namespace):
self.container = []
self.pool = self.get_pool(namespace="/run/pool_size_ratio_80/*")
self.container.append(
self.get_container(pool=self.pool, namespace=container_namespace))
self.get_container(self.pool, namespace=container_namespace))

# 2. Take down network interface of one of the engines. Use the first host.
self.log_step("Take down network interface of one of the engines.")
Expand Down Expand Up @@ -250,7 +250,7 @@ def verify_network_failure(self, ior_namespace, container_namespace):
# 6. To further verify the system, create another container.
self.log_step("Create another container.")
self.container.append(
self.get_container(pool=self.pool, namespace=container_namespace))
self.get_container(self.pool, namespace=container_namespace))

# 7. Run IOR to the new container. Should work.
self.log_step("Expect IOR to pass on the new container.")
Expand Down Expand Up @@ -369,7 +369,7 @@ def test_network_failure_isolation(self):
self.log_step("Create a container without redundancy factor.")
self.container = []
self.container.append(
self.get_container(pool=self.pool, namespace="/run/container_wo_rf/*"))
self.get_container(self.pool, namespace="/run/container_wo_rf/*"))

# 4. Take down the interface where the pool isn't created.
self.log_step("Take down the interface where the pool isn't created.")
Expand Down Expand Up @@ -401,7 +401,7 @@ def test_network_failure_isolation(self):
# 8. Create a new container on the pool and run IOR.
self.log_step("Create a new container on the pool")
self.container.append(
self.get_container(pool=self.pool, namespace="/run/container_wo_rf/*"))
self.get_container(self.pool, namespace="/run/container_wo_rf/*"))

# Run IOR.
self.log_step("Run IOR on the new pool/container.")
Expand Down
6 changes: 3 additions & 3 deletions src/tests/ftest/deployment/server_rank_failure.py
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ def verify_rank_failure(self, ior_namespace):
"""
# 1. Create a pool and a container.
self.pool = self.get_pool(namespace="/run/pool_size_ratio_80/*")
self.add_container(pool=self.pool)
self.container = self.get_container(self.pool)

# 2. Run IOR with given object class and let it run through step 7.
ior_results = {}
Expand Down Expand Up @@ -307,7 +307,7 @@ def test_server_rank_failure_isolation(self):
# 3. Create a container without redundancy factor.
self.container = []
self.container.append(
self.get_container(pool=self.pool, namespace="/run/container_wo_rf/*"))
self.get_container(self.pool, namespace="/run/container_wo_rf/*"))

# 4. Run IOR with oclass SX.
ior_results = {}
Expand Down Expand Up @@ -341,7 +341,7 @@ def test_server_rank_failure_isolation(self):

# 8. Create a new container on the pool and run IOR.
self.container.append(
self.get_container(pool=self.pool, namespace="/run/container_wo_rf/*"))
self.get_container(self.pool, namespace="/run/container_wo_rf/*"))

# Run IOR and verify that it works.
job_num = 2
Expand Down
8 changes: 4 additions & 4 deletions src/tests/ftest/deployment/target_failure.py
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ def verify_failure_with_protection(self, ior_namespace):
"""
# 1. Create a pool and a container.
self.pool = self.get_pool(namespace="/run/pool_size_ratio_80/*")
self.add_container(pool=self.pool, namespace="/run/container_with_rf/*")
self.container = self.get_container(self.pool, namespace="/run/container_with_rf/*")

# 2. Run IOR with oclass RP_2G1 or EC_2P1G1.
ior_results = {}
Expand Down Expand Up @@ -162,7 +162,7 @@ def verify_failure_with_protection(self, ior_namespace):
self.container.destroy()

# 10. Create a new container and run IOR.
self.add_container(pool=self.pool, namespace="/run/container_with_rf/*")
self.container = self.get_container(self.pool, namespace="/run/container_with_rf/*")
ior_results = {}
self.run_ior_report_error(
job_num=job_num, results=ior_results, file_name="test_file_3", pool=self.pool,
Expand Down Expand Up @@ -203,7 +203,7 @@ def test_target_failure_wo_rf(self):
"""
# 1. Create a pool and a container.
self.pool = self.get_pool(namespace="/run/pool_size_ratio_80/*")
self.add_container(pool=self.pool, namespace="/run/container_wo_rf/*")
self.container = self.get_container(self.pool, namespace="/run/container_wo_rf/*")

# 2. Run IOR with oclass SX so that excluding one target will result in a failure.
ior_results = {}
Expand Down Expand Up @@ -329,7 +329,7 @@ def test_target_failure_parallel(self):
self.pool.append(self.get_pool(namespace="/run/pool_size_ratio_66/*"))
for idx in range(2):
self.container.append(
self.get_container(pool=self.pool[idx], namespace="/run/container_wo_rf/*"))
self.get_container(self.pool[idx], namespace="/run/container_wo_rf/*"))

# 2. Run IOR with oclass SX on all containers at the same time.
ior_results = {}
Expand Down
2 changes: 1 addition & 1 deletion src/tests/ftest/dfuse/posix_stat.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ def test_stat_parameters(self):
error_list = []

self.pool = self.get_pool(connect=False)
self.add_container(pool=self.pool)
self.container = self.get_container(self.pool)

idx = 1
for block_size in block_sizes:
Expand Down
2 changes: 1 addition & 1 deletion src/tests/ftest/erasurecode/cell_size_property.py
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ def test_ec_pool_property(self):
# Run IOR for different Transfer size and container cell size.
for tx_size, cont_cell in product(ior_transfer_sizes, cont_cell_sizes):
# Initial container
self.add_container(self.pool, create=False)
self.container = self.get_container(self.pool, create=False)

# Use the default pool property for container and do not update
if cont_cell != pool_prop_expected:
Expand Down
5 changes: 3 additions & 2 deletions src/tests/ftest/io/parallel_io.py
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def test_parallelio(self):
start_dfuse(self, dfuse, self.pool[0])

# create multiple containers
self.add_container_qty(self.cont_count, self.pool[0])
self.container = [self.get_container(self.pool[0]) for _ in range(self.cont_count)]

# check if all the created containers can be accessed and perform
# io on each container using fio in parallel
Expand Down Expand Up @@ -234,8 +234,9 @@ def test_multipool_parallelio(self):
# different times and get appended in the self.container variable in
# unordered manner, causing problems during the write process.
self.log_step("Create 10 containers for each pool.")
self.container = []
for _, pool in enumerate(self.pool):
self.add_container_qty(self.cont_count, pool)
self.container.extend([self.get_container(pool) for _ in range(self.cont_count)])

# Try to access each dfuse mounted container using ls. Once it is
# accessed successfully, go ahead and perform io on that location
Expand Down
4 changes: 2 additions & 2 deletions src/tests/ftest/nvme/pool_exclude.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
"""
(C) Copyright 2020-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
"""
Expand Down Expand Up @@ -70,7 +70,7 @@ def run_nvme_pool_exclude(self, num_pool, oclass=None):
thread_queue = Queue()
for val in range(0, num_pool):
self.pool = pool[val]
self.add_container(self.pool)
self.container = self.get_container(self.pool)
self.cont_list.append(self.container)
rf = ''.join(self.container.properties.value.split(":"))
rf_num = int(re.search(r"rd_fac([0-9]+)", rf).group(1))
Expand Down
4 changes: 2 additions & 2 deletions src/tests/ftest/pool/destroy.py
Original file line number Diff line number Diff line change
Expand Up @@ -543,7 +543,7 @@ def test_destroy_with_containers(self):
self.pool = self.get_pool()

# Create pool container
self.add_container(pool=self.pool)
self.container = self.get_container(self.pool)

# Destroy pool with recursive unset
self.log.info("Attempting to destroy a pool with containers")
Expand Down Expand Up @@ -588,7 +588,7 @@ def test_recursive_destroy_with_containers(self):
self.pool = self.get_pool()

# Create pool container
self.add_container(pool=self.pool)
self.container = self.get_container(self.pool)

# Destroy pool with recursive set
self.log.info("Attempting to recursively destroy a pool with containers")
Expand Down
4 changes: 2 additions & 2 deletions src/tests/ftest/pool/pda.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ def test_pda_pool_property(self):
self.pool = self.get_pool(namespace="/run/pool_1/*")

# create container with default
self.add_container(self.pool, create=True)
self.container = self.get_container(self.pool, create=True)
ec_pda = self.pool.get_property("ec_pda")
rp_pda = self.pool.get_property("rp_pda")

Expand All @@ -76,7 +76,7 @@ def test_pda_pool_property(self):
self.container.destroy()

ec_pda, rp_pda = self.params.get("pda_properties", '/run/container_1/*')
self.add_container(self.pool, namespace="/run/container_1/*", create=False)
self.container = self.get_container(self.pool, namespace="/run/container_1/*", create=False)
self.container.properties.update("ec_pda:{},rp_pda:{}".format(ec_pda, rp_pda))

# Create the container
Expand Down
4 changes: 2 additions & 2 deletions src/tests/ftest/pool/rf.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
'''
(C) Copyright 2022-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
'''
Expand Down Expand Up @@ -40,7 +40,7 @@ def create_verify_destroy_cont(self, pool, cont_rfs, pool_prop_expected):
"""
for cont_rf in cont_rfs:
# Create container
self.add_container(pool, create=False)
self.container = self.get_container(pool, create=False)

# Use the default pool property for container and do not update
if cont_rf != pool_prop_expected:
Expand Down
2 changes: 1 addition & 1 deletion src/tests/ftest/rebuild/no_cap.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ def test_rebuild_no_capacity(self):

# Create a pool and container
self.pool = self.get_pool()
self.add_container(self.pool)
self.container = self.get_container(self.pool)
self.container.open()

# make sure pool looks good before we start
Expand Down
6 changes: 3 additions & 3 deletions src/tests/ftest/rebuild/widely_striped.py
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ def test_rebuild_widely_striped(self):

# create 1st container
self.log.info(">> Creating the first container")
self.add_container(self.pool)
self.container = self.get_container(self.pool)

# start 1st mdtest run and let it complete
self.log.info(">> Running mdtest to completion")
Expand All @@ -86,7 +86,7 @@ def test_rebuild_widely_striped(self):

# create 2nd container
self.log.info(">> Creating the second container")
self.add_container(self.pool)
self.container = self.get_container(self.pool)

# start 2nd mdtest job in the background
self.log.info(">> Running the first mdtest job in the background")
Expand All @@ -110,7 +110,7 @@ def test_rebuild_widely_striped(self):

# create 3rd container
self.log.info(">> Creating the third container")
self.add_container(self.pool)
self.container = self.get_container(self.pool)

# start 3rd mdtest job in the background
self.log.info(">> Running a second mdtest job in the background")
Expand Down
2 changes: 1 addition & 1 deletion src/tests/ftest/rebuild/with_io.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ def test_rebuild_with_io(self):
"""
# Get the test params
self.pool = self.get_pool(create=False)
self.add_container(self.pool, create=False)
self.container = self.get_container(self.pool, create=False)
targets = self.server_managers[0].get_config_value("targets")
# data = self.params.get("datasize", "/run/testparams/*")
rank = self.params.get("rank", "/run/testparams/*")
Expand Down
2 changes: 1 addition & 1 deletion src/tests/ftest/recovery/pool_membership.py
Original file line number Diff line number Diff line change
Expand Up @@ -325,7 +325,7 @@ def test_dangling_rank_entry(self):

self.log_step("Create a pool and a container.")
self.pool = self.get_pool(connect=False)
self.container = self.get_container(pool=self.pool)
self.container = self.get_container(self.pool)

self.log_step("Write some data with IOR.")
self.ior_cmd.set_daos_params(self.pool, self.container.identifier)
Expand Down
2 changes: 1 addition & 1 deletion src/tests/ftest/scrubber/aggregation.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ def test_target_eviction_during_aggregation(self):
self.pool = self.get_pool()
# Disable the aggregation on the pool.
self.pool.set_property("reclaim", "disabled")
self.add_container(self.pool)
self.container = self.get_container(self.pool)
# Pool and Containers are already created. Just run the IOR.
# Run the initial IOR with a small block size.
self.ior_cmd.namespace = "/run/ior_small_block_size/*"
Expand Down
Loading
Loading