*** empty log message ***

git-svn-id: https://ceph.svn.sf.net/svnroot/ceph@100 29311d96-e01e-0410-9327-a35deaab8ce9
This commit is contained in:
sage 2004-08-25 05:28:06 +00:00
parent 76eddbff13
commit 20125b93f6
4 changed files with 14 additions and 6 deletions

View File

@ -17,6 +17,10 @@ ISSUES
- is it practical for replicas to not know who the authority is?
- better authority knowledge of replicas, especially with
- sync
- lock
??
FIX
- hash+export: encode list of replicated dir inodes so they can be discovered before import is procesed.

View File

@ -20,7 +20,7 @@ md_config_t g_conf = {
client_cache_size: 100,
client_cache_mid: .5,
client_requests: 1000,
client_requests: 5000,
log_messages: true,
log_interval: 10.0,
@ -31,7 +31,7 @@ md_config_t g_conf = {
fake_clock: true,
debug: 11,
debug: 10,
mdcache_size: MDS_CACHE_SIZE,
mdcache_mid: .8,
@ -42,6 +42,6 @@ md_config_t g_conf = {
mdbal_replicate_threshold: 500,
mdbal_unreplicate_threshold: 200,
mds_heartbeat_op_interval: 50
mds_heartbeat_op_interval: 5000
};

View File

@ -19,7 +19,9 @@ ostream& operator<<(ostream& out, CDir& dir)
{
string path;
dir.get_inode()->make_path(path);
return out << "[dir " << dir.ino() << " " << path << "/]";
out << "[dir " << dir.ino() << " " << path;
if (dir.is_import()) out << " IMPORT";
return out << "/]";
}

View File

@ -2753,7 +2753,7 @@ void MDCache::handle_export_dir(MExportDir *m)
CDir *dir = idir->dir;
int oldauth = m->get_source();
dout(7) << "handle_export_dir, import_dir " << *dir << " from " << oldauth << endl;
dout(7) << "handle_export_dir, import " << *dir << " from " << oldauth << endl;
assert(dir->is_auth() == false);
show_imports();
@ -2791,6 +2791,8 @@ void MDCache::handle_export_dir(MExportDir *m)
dir->inode->get(CINODE_PIN_IMPORT); // must keep it pinned
containing_import = dir; // imported exports nested under *in
dout(7) << " new import at " << *dir << endl;
}
// i shouldn't be waiting for any ReplicateHashedAck's yet
@ -3206,7 +3208,7 @@ void MDCache::handle_export_dir_notify(MExportDirNotify *m)
// yay, we're the authority
dout(7) << "handle_export_dir_notify on " << *in << " new_auth " << m->get_new_auth() << " updated, telling replicas" << endl;
assert(in->dir_auth != mds->get_nodeid() || in->is_hashed()); // shouldn't explicitly refer to self
assert(in->dir_auth != mds->get_nodeid() || in->dir_is_hashed()); // shouldn't explicitly refer to self
bool wasmine = in->dir_authority(mds->get_cluster()) == mds->get_nodeid();
if (wasmine) {