]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
crimson/osd/object_context: await in-progress loading (per-obc)
authorMatan Breizman <mbreizma@redhat.com>
Tue, 28 May 2024 13:23:10 +0000 (13:23 +0000)
committerMatan Breizman <mbreizma@redhat.com>
Thu, 13 Jun 2024 12:34:01 +0000 (15:34 +0300)
commit19cce9a57310677693d1b0cbc5255b22c520f442
tree9ac43f0956862b1514caede2089b89b0a1210f36
parent9cc161de66c9c43ee0a2eb251237069bf45559ad
crimson/osd/object_context: await in-progress loading (per-obc)

```
  // obc loading is a concurrent phase. In case this obc is being loaded,
  // make other useres of this obc to await for the loading to complete.
```

Since we now await for loading to finish (in-case in progress), we can
also assert is_loaded().

Fixes: https://tracker.ceph.com/issues/65451
Co-authored-by: Xuehan Xu <xuxuehan@qianxin.com>
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
(cherry picked from commit e456bd7cdd1ad1cd68026cebedd5b1d9d01001f7)
src/crimson/common/interruptible_future.h
src/crimson/osd/object_context.h
src/crimson/osd/object_context_loader.cc
src/crimson/osd/object_context_loader.h