Skip to content

Merge release/2.6 into google/2.6 - #17135

Open
wangdi1 wants to merge 44 commits into
google/2.6from
ddiwang/google/2.6
Open

wangdi1 wants to merge 44 commits into
google/2.6from
ddiwang/google/2.6

Conversation

@wangdi1

@wangdi1 wangdi1 commented Nov 16, 2025

Copy link
Copy Markdown
Contributor

liuxuezhao and others added 30 commits October 15, 2025 15:43
If the target is being drained, then exclude should not change
its fseq number, otherwise it may get wrong object layout and
interfere the drain process.

Signed-off-by: Di Wang <ddiwang@google.com>
Co-authored-by: Xuezhao Liu <xuezhao.liu@hpe.com>
Trivy often fails and is unrelated to most PRs. Only run it on PRs if
relevant files are touched.

Signed-off-by: Dalton Bohning <dalton.bohning@hpe.com>
… servers (#16981)

Now the pool connection will return the server's maximum supported layout version,
allowing the client to determine which version to use for container creation/open.

Signed-off-by: Wang Shilong <shilong.wang@hpe.com>
Co-authored-by: Mohamad Chaarawi <mohamad.chaarawi@hpe.com>
…egation (#16945)

Increment the map_version for reclaim tasks to ensure they operate on the latest
pool map. Without this, reclaim tasks might act on an outdated pool map, potentially
causing data corruption.

Always recalculate parity for partial overwrites, disabling the optimized path to
ensure data consistency.

Ignore parity update errors during EC aggregation. This is a temporary workaround
because DAOS does not use DTX to update parities during EC aggregation.
Without DTX, parity shards may become inconsistent if an engine failure occurs
alongside a rebuild. This approach significantly increases the likelihood of parity
shards remaining consistent when EC aggregation interacts with rebuild operations.

Standardize the parity target status checks for both full stripe and hole processing
during EC aggregation.

Introduce additional barriers to minimize the chances of overlapping EC aggregation
and rebuild operations.

Signed-off-by: Liang Zhen <gnailzenh@gmail.com>
Tag third release candidate for 2.6.4.

Signed-off-by: Phil Henderson <phillip.henderson@hpe.com>
Signed-off-by: Xuezhao Liu <xuezhao.liu@hpe.com>
remove the inflight update test to avoid DER_UPDATE_AGAIN trouble,
it is not easy to control the timing for that case.

Signed-off-by: Xuezhao Liu <xuezhao.liu@hpe.com>
…tainer creation (#17018)

New container creation by clients will specify the object version.
If not specified (dpe_val == 0), it indicates a client from before
DAOS 2.6.4, so use VERSION 1 for backward compatibility instead
of inheriting from pool object version.

Signed-off-by: Wang Shilong <shilong.wang@hpe.com>
- Bump libfabric version >= 1.22.0-4
- Bump mercury version >= 2.4.0-7
- Bump argobots version >= 1.2-3
- Bump libisal version >= 2.31.1-7
- Bump libisal_crypto version >= 2.24.0-3
- Bump pmemobj1 >= 2.1.0-3
- Bump pmemobj >= 2.1.0-6

Signed-off-by: Ryon Jensen <ryon.jensen@hpe.com>
Tag fourth release candidate for 2.6.4

Signed-off-by: Phil Henderson <phillip.henderson@hpe.com>
Signed-off-by: Liang Zhen <gnailzenh@gmail.com>
Co-authored-by: Mohamad Chaarawi <mohamad.chaarawi@hpe.com>
revert libfabric dep version to 1.20 to account for Slingshot libfabric
on aurora.

Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@hpe.com>
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@hpe.com>
Tag fifth release candidate for 2.6.4

Signed-off-by: Phil Henderson <phillip.henderson@hpe.com>
We infer from the available log messages that bio_xsctxt_alloc might get stuck after "failed to init bdevs: -1003" for some unknown reason related to SPDK. This patch skips two while statements in bio_xsctxt_free that might be where we got stuck.

When not in the CR mode, a pool ignores nonexistent children, leading to states that the current code cannot handle well (yet). This patch restricts this CR behavior to the CR mode. (Ideally, we shall allow the healthy children to start and automatically exclude the nonexistent children in the future.)

To make pool start failures easier to spot, this patch adds a RAS event that is raised when we fail to start a pool.

Also, this patch

fixes "-1" xstream IDs in messages logged during engine setup,
fixes a few places where we should write "pool" instead of "pool service", including the name of an internal environment variable, and
adds some infrequent log messages to help future debugging of engine start issues.

Move the unusually late initialization of dss_tls_key and
daos_srv_modkey earlier, so that the TLS checks in server_id_cb will be
safe. Both objects are static, and there's no reason to initialize them
so late.

Signed-off-by: Li Wei <liwei@hpe.com>
EC with 3 parity is supported, so we should consider that for the dfs
chunk size selection.

Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@hpe.com>
Resolve for paramiko ssh issue

Signed-off-by: Ding-Hwa Ho <ding-hwa.ho@hpe.com>
To detect potential on-wire data corruption for CPD RPC bulk transfer.
CPD RPC bulk logic improvement (use bulk handle instead of bulk handle
pointer on-wire) and cleanup.

Signed-off-by: Fan Yong <fan.yong@hpe.com>
)

- Verify ranks can start after clearing exclusions
- Stop a random rank instead of hardcoded
- Increase to 4 servers / dual engine

Signed-off-by: Dalton Bohning <dalton.bohning@hpe.com>
) (#17105)

Update get_journalctl to accept user argument other than root.
Update stop_processes to accept user argument other than root.
Update agent_failure.py to run these as the current user when
applicable.

Signed-off-by: Dalton Bohning <dalton.bohning@hpe.com>
Re-write the check so it does not re-run the same subprocess commands.

Signed-off-by: Dalton Bohning <dalton.bohning@hpe.com>
…6266)

So previous runs are cancelled on new pushes.

Signed-off-by: Dalton Bohning <dalton.bohning@hpe.com>
…gs (#16503) (#16703)

Fix issue where a property value containing multiple comma-separated strings cannot be set e.g. self_heal:exclude,rebuild.

New syntax for key-value positional argument:
key:val[,key:val1[;val2...]...]
e.g. dmg pool set-prop bob self_heal:"exclude;rebuild"

Also includes the fix for DAOS-17666.

Signed-off-by: Tom Nabarro <thomas.nabarro@hpe.com>
Signed-off-by: Li Wei <liwei@hpe.com>
Co-authored-by: Tom Nabarro <tom.nabarro@intel.com>
In bio_wal_checkpoint(), we shouldn't unmap the checkpoint-ed region
before flushing WAL header (to make the last checkpoint-ed ID
persistent), otherwise, if the engine is interrupted in between the
unmap and flush, next WAL replay on engine start will replay from
the stale checkpoint-ed ID where the WAL tx data is already cleared
by unmap.

Signed-off-by: Niu Yawei <yawei.niu@hpe.com>
…ttached (#16956) (#17013)

On leap15 the /sys/class/nvme/ folder exists but it is empty
when no NVMe device attached.

Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@hpe.com>
Use the merge-base in the GHA clang-format instead of the tip of the target

Signed-off-by: Dalton Bohning <dalton.bohning@hpe.com>
db_traverse() calls vos_iterate() to traverse the VOS_ITER_AKEY
for related sysdb table. For each found item, it handles it via
sys_db_trav_cb_t() that may remove such item from related sysdb
table, such as for some CHK cleanup use case. If that happened,
We will notify vos_iterate() logic via set "VOS_ITER_CB_DELETE"
flag in the "acts" parameter; otherwise some item(s) in related
sysdb table may be skipped in subsequent iteration. For CHK use
case, that may affect new check instance to reset automatically.

Signed-off-by: Fan Yong <fan.yong@hpe.com>
…6625)

The user/admin may specify repeated pool(s) in the check list via
'dmg check' command. The logic needs to handle such case to avoid
invalid assertion.

The patch also fixes chk dump logic to avoid out-of-boundary DRAM
accessing.

Signed-off-by: Fan Yong <fan.yong@hpe.com>
) (#17104)

Support passing DAOS_TEST_SYSTEMD_PATH and DAOS_TEST_SYSTEMD_LIBRARY_PATH
to ftest. When set, this tells ftest to put these values into the
systemd config for the server and agent.

Signed-off-by: Dalton Bohning <dalton.bohning@hpe.com>
Combine all the variants into one complete variant.
This is closer to production and is more efficient.

Signed-off-by: Dalton Bohning <dalton.bohning@hpe.com>
kjacque and others added 14 commits November 12, 2025 12:44
The component compatibility check is noisy, and reduces the
usefulness of debug-level logging for customers. It's still
useful for devs as a trace-level message.

Signed-off-by: Kris Jacque <kris.jacque@hpe.com>
…17093)

Excluded ranks should be able to move only to the Joined or
AdminExcluded states. Regardless of the process state, without
re-joining successfully, the rank is still effectively excluded.

We saw a real life case where Excluded ranks were transitioning
to the Errored state when they SIGKILLed themselves after
discovering their exclusion.

Signed-off-by: Kris Jacque <kris.jacque@hpe.com>
…6583) (#16991)

Verify the server storage devices exist before and after running the
tests.

Generate a test summary indicating the order, status, and host usage for
each test file and its variants.

Signed-off-by: Phil Henderson <phillip.henderson@hpe.com>
…16673)

Return CONT_TGT_SNAPSHOT_NOTIFY RPC errno to the snap_oit_create()
sponsor instead of converting it as -DER_IO. Then related client
side logic can know what the failure is.

Signed-off-by: Fan Yong <fan.yong@hpe.com>
Change how the test behaves. At start it will now wait for all 3 ranks
to be present and waits 30 seconds after that before rank=2 is shut down.

30 seconds is left to allow for swim notification status to be propagated across
all 3 servers in this group.

Added --skip_wait option to clients to skip crtu_wait_for_ranks() call as only
first client invocation needs to ensure all 3 servers are up.

Signed-off-by: Alexander A Oganezov <alexander.oganezov@hpe.com>
Add out of quota RPC to timeout list once resubmit them.

Signed-off-by: Di Wang <ddiwang@google.com>
Signed-off-by: Alexander A Oganezov <alexander.oganezov@hpe.com>
Remove string maximal length limitation of the d_rank_range_list_str()
conversion function.

Signed-off-by: Cedric Koch-Hofer <cedric.koch-hofer@hpe.com>
…6784)

DAOS_INTENT_CHECK is intended for offline utilities like DDB and DLCK
to inspect the contents of the pool while it is idle.
EV iterators must support it as well.

Signed-off-by: Jan Michalski <jan-marian.michalski@hpe.com>
Co-authored-by: Fan Yong <fan.yong@hpe.com>
Don't modify the voter list unless the voter isn't already listed.

Signed-off-by: Kris Jacque <kris.jacque@hpe.com>
Co-authored-by: Tom Nabarro <thomas.nabarro@hpe.com>
Updates `EnricoMi/publish-unit-test-result-action` from 2.20.0 to 2.21.0
Updates `actions/upload-artifact` from 4 to 5
Updates `codespell-project/actions-codespell` from 2.1 to 2.2
Updates `github/codeql-action` from 4.30.7 to 4.31.2

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Dalton Bohning <dalton.bohning@hpe.com>
Due to a bug in parsing props, it was possible to crash the daos_engine by entering the same pool property twice during pool create by using the --properties flag twice. A prop could also be duplicated within the --properties flag without causing an error.

This patch checks for duplication at three different points:
- Within all props set within a --properties flag.
- Within different property strings, if --properties was used multiple times.
- At the engine level.

Signed-off-by: Kris Jacque <kris.jacque@hpe.com>
…/2.6

Signed-off-by: Di Wang <ddiwang@google.com>
Signed-off-by: Di Wang <ddiwang@google.com>
@github-actions

Copy link
Copy Markdown

Errors are component not formatted correctly,Ticket number prefix incorrect,PR title is malformatted. See https://daosio.atlassian.net/wiki/spaces/DC/pages/11133911069/Commit+Comments,Unable to load ticket data
https://daosio.atlassian.net/browse/Merge

@daosbuild3

Copy link
Copy Markdown
Collaborator

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.