]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
os/bluestore/bluefs: Add tracking of bluefs log in noop replay mode 48915/head
authorAdam Kupczyk <akupczyk@redhat.com>
Wed, 15 Dec 2021 09:59:55 +0000 (09:59 +0000)
committerIgor Fedotov <igor.fedotov@croit.io>
Tue, 6 Dec 2022 00:16:17 +0000 (03:16 +0300)
Keep updating bluefs log when printing content of bluefs replay log.
Without this modification we only have initial content of log.
Log can be printed by 'ceph-bluestore-tool bluefs-log-dump'.

Signed-off-by: Adam Kupczyk <akupczyk@redhat.com>
(cherry picked from commit 2292a4d85a6c26be69b3cda8ba885a0cb23b2224)

src/os/bluestore/BlueFS.cc

index 76751b77160dfbae367a6f392c1450689424eb75..9bf79ead050c5cfb6637819a62cae6666b5fab35 100644 (file)
@@ -1479,6 +1479,14 @@ int BlueFS::_replay(bool noop, bool to_stdout)
                 return r;
               }
            }
+         } else if (noop && delta.ino == 1) {
+           // we need to track bluefs log, even in noop mode
+           FileRef f = _get_file(1);
+           bluefs_fnode_t& fnode = f->fnode;
+           fnode.ino = delta.ino;
+           fnode.mtime = delta.mtime;
+           fnode.size = delta.size;
+           fnode.claim_extents(delta.extents);
          }
        }
       break;