]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: fix pick_inode_snap
authorSage Weil <sage@newdream.net>
Thu, 19 Aug 2010 23:21:47 +0000 (16:21 -0700)
committerSage Weil <sage@newdream.net>
Thu, 19 Aug 2010 23:21:47 +0000 (16:21 -0700)
Return when we find something.

src/mds/MDCache.cc

index c4872fa3198ae7774acabf7216cfa91649f809a4..270313d0e1f3c67fd5360f26eb1c4402efbdc1c1 100644 (file)
@@ -1230,13 +1230,14 @@ CInode *MDCache::pick_inode_snap(CInode *in, snapid_t follows)
   if (snaps.empty())
     return in;
 
-  for (set<snapid_t>::const_iterator p = snaps.upper_bound(follows);
+  for (set<snapid_t>::const_iterator p = snaps.upper_bound(follows);  // first item > follows
        p != snaps.end();
        p++) {
     CInode *t = get_inode(in->ino(), *p);
     if (t) {
       in = t;
       dout(10) << "pick_inode_snap snap " << *p << " found " << *in << dendl;
+      break;
     }
   }
   return in;