]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
crimson: distinguish record and block relative paddrs
authorSamuel Just <sjust@redhat.com>
Tue, 12 May 2020 04:02:07 +0000 (21:02 -0700)
committerSamuel Just <sjust@redhat.com>
Tue, 2 Jun 2020 23:56:41 +0000 (16:56 -0700)
commit1ac405bceccbec7d548ecff7b18ab37148894899
tree315a7a69d3775d0705c441b8bdcf732f41c9f2ca
parentb628e065261950a98b61d2dd7679febc75d477ae
crimson: distinguish record and block relative paddrs

Blocks get read independently of the surrounding record,
so paddr's embedded directly in a block need to refer
to other blocks within the same record by a block_relative
addr relative to the block's own offset.  By contrast,
deltas to existing blocks need to use record_relative
addrs relative to the first block of the record.

This patch distinguishes the two kinds of relative paddr
(mainly for debugging purposes) and adapts cache, journal,
etc to use the appropriate types.

Signed-off-by: Samuel Just <sjust@redhat.com>
src/crimson/os/seastore/cache.cc
src/crimson/os/seastore/cache.h
src/crimson/os/seastore/cached_extent.h
src/crimson/os/seastore/journal.cc
src/crimson/os/seastore/journal.h
src/crimson/os/seastore/seastore_types.cc
src/crimson/os/seastore/seastore_types.h
src/test/crimson/seastore/test_seastore_journal.cc