test/lazy-omap-stats: regex optimize for header index find#55596
test/lazy-omap-stats: regex optimize for header index find#55596NitzanMordhai wants to merge 1 commit intoceph:mainfrom
Conversation
|
jenkins test make check |
|
@badone can you please review? |
| R"((PG_STAT[\s\S]*))" | ||
| "\n +\n[0-9]"); | ||
| regex reg(R"(PG_STAT[^\n]*\n)"); | ||
| string command = R"({"prefix": "pg dump"})"; |
There was a problem hiding this comment.
Of course these are not equivalent and the change should not be necessary but, if you are confident this covers all bases then I'm all for it.
With the current regex, and large output from pg dump, regex_search can sometimes causing a segfault. by changing the header regex to find less intensive regex the regex_search won't segfault. Fixes: https://tracker.ceph.com/issues/59196 Signed-off-by: Nitzan Mordechai <nmordech@redhat.com>
9e0ca27 to
ac59bc8
Compare
|
Teuthology test result @NitzanMordhai There was a related failure in https://pulpito.ceph.com/yuriw-2024-03-08_16:20:46-rados-wip-yuri4-testing-2024-03-05-0854-distro-default-smithi/. Related Failures The fix worked partially but failed down the line at some other point in the script.
For the full report please see: https://tracker.ceph.com/projects/rados/wiki/MAIN#httpstrellocomcQFtoIRXE1971-wip-yuri4-testing-2024-03-05-0854 |
|
The failing tests were using the older version of the patch with the change only to LazyOmapStatsTest::wait_for_active_clean() (9e0ca27) and no change to LazyOmapStatsTest::check_one() which is where the test is failing. Can we try again with the patch as it currently stands? |
|
Saw a segfault in the test run including this PR - https://pulpito.ceph.com/yuriw-2024-03-19_00:09:45-rados-wip-yuri5-testing-2024-03-18-1144-distro-default-smithi/7609959/ in the ceph_test_lazy_omap_stats test. PRs being tested in this batch are noted here: https://tracker.ceph.com/issues/64974 |
This approach is just going to be whack-a-mole I'm afraid due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86164 I'm looking into an alternative approach and I hope that's OK with you @NitzanMordhai ? |
@badone sure, thanks a lot for picking it up! |
|
Closing in favour of #55596 Thank you for your effort Nitzan. |
With the current regex, and large output from pg dump, regex_search can sometimes causing a segfault.
by changing the header regex to find less intensive regex the regex_search won't segfault.
Fixes: https://tracker.ceph.com/issues/59196
Contribution Guidelines
To sign and title your commits, please refer to Submitting Patches to Ceph.
If you are submitting a fix for a stable branch (e.g. "quincy"), please refer to Submitting Patches to Ceph - Backports for the proper workflow.
When filling out the below checklist, you may click boxes directly in the GitHub web UI. When entering or editing the entire PR message in the GitHub web UI editor, you may also select a checklist item by adding an
xbetween the brackets:[x]. Spaces and capitalization matter when checking off items this way.Checklist
Show available Jenkins commands
jenkins retest this pleasejenkins test classic perfjenkins test crimson perfjenkins test signedjenkins test make checkjenkins test make check arm64jenkins test submodulesjenkins test dashboardjenkins test dashboard cephadmjenkins test apijenkins test docsjenkins render docsjenkins test ceph-volume alljenkins test ceph-volume toxjenkins test windowsjenkins test rook e2e