summaryrefslogtreecommitdiff
path: root/src/TODO
diff options
context:
space:
mode:
authorSage Weil <sage@newdream.net>2010-03-11 15:39:30 -0800
committerSage Weil <sage@newdream.net>2010-03-11 15:39:30 -0800
commit6c88cf353ac1833756725a7f5e6a0e802595bee5 (patch)
tree31aac47d4608cd483534ec68a22b5462764c2d2b /src/TODO
parent0e44c85705bc6e9474620e08d36ab22afc216bcc (diff)
downloadceph-6c88cf353ac1833756725a7f5e6a0e802595bee5.tar.gz
mds: detach mdsdir inode from hierarchy
Attaching mdsdir to the root hierarchy means that random mds X can't push replicas of everything needed for mds Y to reach a stray item, because Y may not have the /.ceph/mds# dentries and inode. So detach myin from the hierarchy. This simplifies startup/mkfs somewhat because non-root mds's don't have to traverse through /.ceph. We can still make it reachable via /.ceph/mds# with a remote dentry (although we haven't done that yet). MDS stopping is currently broken, since we can't export the stray dir any more (it's auth mds fixed).
Diffstat (limited to 'src/TODO')
-rw-r--r--src/TODO3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/TODO b/src/TODO
index ce2eecc4ee0..ef56f5b94c8 100644
--- a/src/TODO
+++ b/src/TODO
@@ -65,6 +65,9 @@ bugs
- rm -r failure (on kernel tree)
- dbench 1, restart mds (may take a few times), dbench will error out.
+- multi-mds: the stray dir should be it's own root/base (with /.ceph/mds$n/stray a remote dentry?)
+ ...otherwise mds X can't always push a stray replica to Y and have it fully linked into the hierarchical cache
+
- multi-mds, dbench 10, null dn is migrated, linked on new node, but remains null on old mds. a little later we crash when we unlink due to the discrepancy.
mds/MDCache.cc: In function 'void MDCache::handle_dentry_unlink(MDentryUnlink*)':
mds/MDCache.cc:8057: FAILED assert(dnl->is_remote())