]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
test/neocls/log trimming: reproduce log trimming can go into an infinite loop
authorOguzhan Ozmen <oozmen@bloomberg.net>
Tue, 12 May 2026 19:31:04 +0000 (19:31 +0000)
committerOguzhan Ozmen <oozmen@bloomberg.net>
Tue, 12 May 2026 20:17:52 +0000 (20:17 +0000)
commitfe1a5a585a82edac88c3511348c416569cb6b134
tree92d367c0c9becc0776586c9e78b439c88b580b27
parentb75aa62c46d2154ad3de9e5c7cbbf2f7ad3a1a76
test/neocls/log trimming: reproduce log trimming can go into an infinite loop

Add two tests that calls trim() loop function directly (the
use_awaitable_t overloads) rather than the single-op wrapper used by
existing tests. Two test cases for the marker-based overload:

- trim_loop_all_entries_by_marker: writes 10 entries, trims all, verifies
  the loop terminates and entries are gone.
- trim_loop_empty_log_by_marker: trims an empty log object, verifying
  the loop terminates on immediate ENODATA.

Without the fix in the following commits, both tests hang indefinitely.

- start a vstart cluster
- run the test: [build] $ ./bin/ceph_test_neocls_log
- the test introduced in this commit stalls forever:
    ...
    RUN      ] neocls_log.trim_loop_all_entries_by_marker <-- stalls forever

Reproduces: https://tracker.ceph.com/issues/76563
Signed-off-by: Oguzhan Ozmen <oozmen@bloomberg.net>
src/test/cls_log/test_neocls_log.cc