*** empty log message ***

git-svn-id: https://ceph.svn.sf.net/svnroot/ceph@423 29311d96-e01e-0410-9327-a35deaab8ce9
This commit is contained in:
sage 2005-07-08 06:16:37 +00:00
parent b6147530cc
commit 3c5a7f1bb0
3 changed files with 13 additions and 3 deletions

View File

@ -300,7 +300,9 @@ Dentry *Client::lookup(filepath& path)
// -------
MClientReply *Client::make_request(MClientRequest *req, bool auth_best)
MClientReply *Client::make_request(MClientRequest *req,
bool auth_best,
int use_auth) // this param is icky!
{
// send to what MDS? find deepest known prefix
Inode *cur = root;
@ -340,6 +342,10 @@ MClientReply *Client::make_request(MClientRequest *req, bool auth_best)
dout(9) << "i have no idea where " << req->get_filepath() << " is" << endl;
}
// force use of a particular mds auth?
if (use_auth >= 0)
mds = use_auth;
// drop mutex for duration of call
client_lock.Unlock();
MClientReply *reply = (MClientReply*)messenger->sendrecv(req,
@ -1192,10 +1198,13 @@ int Client::close(fileh_t fh)
fh_map.erase(fh);
delete f;
// note mds auth.. we'll send the close there! FIXME this is sort of icky
int mds_auth = in->authority();
release_inode_buffers(in);
put_inode( in );
MClientReply *reply = make_request(req, true);
MClientReply *reply = make_request(req, true, mds_auth);
assert(reply);
int result = reply->get_result();
dout(3) << "close " << fh << " result = " << result << endl;

View File

@ -268,7 +268,7 @@ class Client : public Dispatcher {
// blocking mds call
MClientReply *make_request(MClientRequest *req, bool auth_best=false);
MClientReply *make_request(MClientRequest *req, bool auth_best=false, int use_auth=-1);
// buffer cache

View File

@ -330,6 +330,7 @@ int SyntheticClient::play_trace(Trace& t, string& prefix)
for (map<__int64_t, __int64_t>::iterator fi = open_files.begin();
fi != open_files.end();
fi++) {
dout(1) << "leftover close " << fi->second << endl;
client->close(fi->second);
}