From: Patrick Donnelly Date: Tue, 3 Apr 2018 22:41:19 +0000 (-0700) Subject: Merge PR #16779 into master X-Git-Tag: v13.1.0~413 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=ebd0fcd0674e6bc527a7af548bd420db943f98a6;p=ceph.git Merge PR #16779 into master * refs/pull/16779/head: mds: cleanup MDCache::open_snaprealms() mds: make sure snaptable version > 0 mds: don't consider CEPH_INO_LOST_AND_FOUND as base inode mds: replace MAX() with std::max() tools/cephfs: make cephfs-data-scan create snaprealm for base inodes qa/cephfs: don't run TestSnapshots.test_kill_mdstable on kclient qa/cephfs: adjust check of 'cephfs-table-tool all show snap' output mds: don't warn unconnected snaplrealms in cluster log mds: update CInode/CDentry's first according to global snapshot seq qa/cephfs: add tests for snapclient cache qa/cephfs: add tests for snaptable transaction mds: add asok command that dumps cached snap infos qa/cephfs: add tests for multimds snapshot client: don't mark snap directory complete when its dirstat is empty qa/workunits/snaps: add snaprealm split test mds: make sure mds has uptodate mdsmap before checking 'allows_snaps' client: fix incorrect snaprealm when adding caps qa/workunits/snaps: add hardlink snapshot test mds: add incompat feature and bump protocol for snapshot changes mds: detach inode with single hardlink from global snaprealm mds: record hardlink snaps in inode's snaprealm mds: attach inode with multiple hardlinks to dummy global snaprealm mds: cleanup rename code mds: ensure xlocker has uptodate lock state mds: simplify SnapRealm::build_snap_{set,trace} mds: record global last_created/last_destroyed in snaptable mds: pop projected snaprealm before inode's parent changes mds: keep isnap lock in sync state mds: handle mksnap vs resolve_snapname race mds: cleanup snaprealm past parents open check mds: rollback snaprealms when rolling back slave request mds: send updated snaprealms along with slave requests mds: explict notification for snap update mds: send snap related messages centrally during mds recovery mds: synchronize snaptable caches when mds recovers mds: introduce MDCache::maybe_finish_slave_resolve() mds: notify all mds about prepared snaptable update mds: record snaps in old snaprealm when moving inode into new snaprealm mds: cache snaptable in snapclient mds: recover snaptable client when mds enters resolve state Reviewed-by: Patrick Donnelly --- ebd0fcd0674e6bc527a7af548bd420db943f98a6 diff --cc src/mds/Server.cc index d2c29d8ebd0,56276f663c0..2fdc623855a --- a/src/mds/Server.cc +++ b/src/mds/Server.cc @@@ -3663,8 -3655,10 +3681,8 @@@ void Server::handle_client_openc(MDRequ // make sure this inode gets into the journal le->metablob.add_opened_ino(in->ino()); - LogSegment *ls = mds->mdlog->get_current_segment(); - ls->open_files.push_back(&in->item_open_file); - C_MDS_openc_finish *fin = new C_MDS_openc_finish(this, mdr, dn, in, follows); + C_MDS_openc_finish *fin = new C_MDS_openc_finish(this, mdr, dn, in); if (mdr->client_request->get_connection()->has_feature(CEPH_FEATURE_REPLY_CREATE_INODE)) { dout(10) << "adding ino to reply to indicate inode was created" << dendl;