DAOS-19025 test: enospace.py functional tests is broken with new log …#18391
Conversation
|
Ticket title is 'enospace.py functional tests is broken with new log format' |
|
Test stage Functional Hardware Medium MD on SSD completed with status FAILURE. https://jenkins-3.daos.hpc.amslabs.hpecorp.net//job/daos-stack/job/daos/view/change-requests/job/PR-18391/1/execution/node/742/log |
|
Test stage Functional Hardware Medium MD on SSD completed with status FAILURE. https://jenkins-3.daos.hpc.amslabs.hpecorp.net//job/daos-stack/job/daos/view/change-requests/job/PR-18391/2/execution/node/738/log |
df382ca to
8399dbf
Compare
|
Test stage Functional Hardware Medium MD on SSD completed with status FAILURE. https://jenkins-3.daos.hpc.amslabs.hpecorp.net//job/daos-stack/job/daos/view/change-requests/job/PR-18391/5/execution/node/743/log |
8399dbf to
3ee04f8
Compare
|
Test stage Functional Hardware Medium MD on SSD completed with status UNSTABLE. https://jenkins-3.daos.hpc.amslabs.hpecorp.net/job/daos-stack/job/daos//view/change-requests/job/PR-18391/6/testReport/ |
…format PR #17654 (DAOS-17989) moved the severity level to the front of each log line. The sed match pattern in get_errors_count() requires at least one character before ERR, so it never matches the new format and all NvmeEnospace subtests fail with DER_NOSPACE count=0. Fix: update the pattern to also accept ERR at the start of the line: ^(ERR|.+[[:space:]]ERR)[[:space:]]... Quick-Functional: true Test-tag: NvmeEnospace Test-repeat: 5 Signed-off-by: Cedric Koch-Hofer <cedric.koch-hofer@hpe.com>
3ee04f8 to
9ed0e9f
Compare
|
Test stage Functional Hardware Medium MD on SSD completed with status UNSTABLE. https://jenkins-3.daos.hpc.amslabs.hpecorp.net/job/daos-stack/job/daos//view/change-requests/job/PR-18391/7/testReport/ |
| # Get the Client side Error from client_log file. | ||
| cmd = "cat {} | sed -n -E -e ".format(get_log_file(file_glob)) | ||
| cmd += r"'/^.+[[:space:]]ERR[[:space:]].+[[:space:]]DER_[^(]+\([^)]+\).+$/" | ||
| cmd += r"'/^(ERR|.+[[:space:]]ERR)[[:space:]].+[[:space:]]DER_[^(]+\([^)]+\).+$/" |
There was a problem hiding this comment.
Backward compatibility is not required.
I don't know of any situation where we use the master branch test version with release (2.6/2.8) RPMs.
| cmd += r"'/^(ERR|.+[[:space:]]ERR)[[:space:]].+[[:space:]]DER_[^(]+\([^)]+\).+$/" | |
| cmd += r"'/^ERR|[[:space:]].+[[:space:]]DER_[^(]+\([^)]+\).+$/" |
There was a problem hiding this comment.
There is technically one case: the interoperability tests :)
But those tests do not call this code
There was a problem hiding this comment.
Backward compatibility is not required. I don't know of any situation where we use the
masterbranch test version with release (2.6/2.8) RPMs.
- Remove backward compatibility
…/daos-19025/patch-001
…format Fix reviewer comments: - remove backward compatibility Quick-Functional: true Test-tag: NvmeEnospace Test-repeat: 5 Signed-off-by: Cedric Koch-Hofer <cedric.koch-hofer@hpe.com>
…/daos-19025/patch-001 Quick-Functional: true Test-tag: NvmeEnospace Test-repeat: 5
|
Test stage Functional Hardware Medium Verbs Provider MD on SSD completed with status FAILURE. https://jenkins-3.daos.hpc.amslabs.hpecorp.net//job/daos-stack/job/daos/view/change-requests/job/PR-18391/9/execution/node/787/log |
|
Test stage Functional Hardware Large MD on SSD completed with status FAILURE. https://jenkins-3.daos.hpc.amslabs.hpecorp.net//job/daos-stack/job/daos/view/change-requests/job/PR-18391/9/execution/node/872/log |
|
Test stage Functional Hardware Medium MD on SSD completed with status UNSTABLE. https://jenkins-3.daos.hpc.amslabs.hpecorp.net/job/daos-stack/job/daos//view/change-requests/job/PR-18391/9/testReport/ |
|
The failure of the last build #9 is a known issue reported in the ticket DAOS-19033. |
|
@daos-stack/daos-gatekeeper could you lend this PR with the following message:
|
Description
Fixes
NvmeEnospacefunctional tests (nvme/enospace.py) which all fail with"Expected DER_NOSPACE (-1007) should be > 0: got=0"on any CI run against a build that includes the new DAOS log format.PR #17654 (DAOS-17989, merged 2026-05-11) moved the message severity level to the front of every log line:
Old format:
New format:
The sed match pattern in
get_errors_count()(src/tests/ftest/util/general_utils.py) was written for the old format and requires at least one character beforeERR:With the new format,
ERRis the first field on the line, so the pattern never matches.get_errors_count()returns an empty count, causing everyverify_enospace_log()check to fail even thoughDER_NOSPACEerrors are present in the log.The proposed fix, update the match pattern to accept
ERRat either the start of the line (new format) or preceded by a timestamp (old format), keeping backward compatibility:The extraction sub-pattern (which captures the numeric error code) is unchanged and already works with both formats since
DER_NOSPACE(-1007)always appears after some content on the line.Steps for the author:
After all prior steps are complete: