Fixed bugs(Issue 363)
1) Fixed Issue 363 Fixed a bug which has below reason. Fuse does not wait finishing "release file descriptor" function called by fuse, and fuse runs(calls) next processing(commands). Then s3fs could not clear stats cache information for that file before calling next processing, and s3fs uses old stats cache information. So that, s3fs clears stats cache in release function at first. And found two bad codes(but these codes do not influence normal movement) in fdcache.cpp and fixed these. Issue 363: make check failing inconsistently git-svn-id: http://s3fs.googlecode.com/svn/trunk@471 df820570-a93a-0410-bd06-b72b767a4274
This commit is contained in:
@ -515,7 +515,7 @@ void FdEntity::Clear(void)
|
||||
AutoLock auto_lock(&fdent_lock);
|
||||
|
||||
if(file){
|
||||
{
|
||||
if(0 != cachepath.size()){
|
||||
CacheFileStat cfstat(path.c_str());
|
||||
if(!pagelist.Serialize(cfstat, true)){
|
||||
DPRN("failed to save cache stat file(%s).", path.c_str());
|
||||
@ -543,7 +543,7 @@ void FdEntity::Close(void)
|
||||
refcnt--;
|
||||
}
|
||||
if(0 == refcnt){
|
||||
{
|
||||
if(0 != cachepath.size()){
|
||||
CacheFileStat cfstat(path.c_str());
|
||||
if(!pagelist.Serialize(cfstat, true)){
|
||||
DPRN("failed to save cache stat file(%s).", path.c_str());
|
||||
|
||||
Reference in New Issue
Block a user