If we are auth for the root inode, load it's initial value off of disk. We
may not see it in the log if it has not been modified. If it has, this
is useless but fast/harmless. This only occurs for brand-new filesystems
where the mds is immediately restarted.
Fixes #671.
Signed-off-by: Sage Weil <sage@newdream.net>
break;
case 2:
- if (is_starting()) {
+ if (is_starting() ||
+ whoami == mdsmap->get_root()) { // load root inode off disk if we are auth
dout(2) << "boot_start " << step << ": loading/discovering root inode" << dendl;
mdcache->open_root_inode(new C_MDS_BootStart(this, 3));
break;