mirror of
https://github.com/s3fs-fuse/s3fs-fuse.git
synced 2024-11-10 23:00:57 +00:00
Merge pull request #756 from orozery/optimize_defaults
Optimize defaults
This commit is contained in:
commit
da95afba8a
@ -27,7 +27,7 @@ Installation
|
||||
On Ubuntu 14.04:
|
||||
|
||||
```
|
||||
sudo apt-get install automake autotools-dev fuse g++ git libcurl4-gnutls-dev libfuse-dev libssl-dev libxml2-dev make pkg-config
|
||||
sudo apt-get install automake autotools-dev fuse g++ git libcurl4-openssl-dev libfuse-dev libssl-dev libxml2-dev make pkg-config
|
||||
```
|
||||
|
||||
On CentOS 7:
|
||||
|
@ -142,7 +142,7 @@ pthread_mutex_t StatCache::stat_cache_lock;
|
||||
//-------------------------------------------------------------------
|
||||
// Constructor/Destructor
|
||||
//-------------------------------------------------------------------
|
||||
StatCache::StatCache() : IsExpireTime(false), IsExpireIntervalType(false), ExpireTime(0), CacheSize(1000), IsCacheNoObject(false)
|
||||
StatCache::StatCache() : IsExpireTime(false), IsExpireIntervalType(false), ExpireTime(0), CacheSize(100000), IsCacheNoObject(false)
|
||||
{
|
||||
if(this == StatCache::getStatCacheData()){
|
||||
stat_cache.clear();
|
||||
|
14
src/s3fs.cpp
14
src/s3fs.cpp
@ -120,6 +120,7 @@ static bool nocopyapi = false;
|
||||
static bool norenameapi = false;
|
||||
static bool nonempty = false;
|
||||
static bool allow_other = false;
|
||||
static bool fuse_read_mode_set = false;
|
||||
static bool load_iamrole = false;
|
||||
static uid_t s3fs_uid = 0;
|
||||
static gid_t s3fs_gid = 0;
|
||||
@ -4355,6 +4356,10 @@ static int my_fuse_opt_proc(void* data, const char* arg, int key, struct fuse_ar
|
||||
allow_other = true;
|
||||
return 1; // continue for fuse option
|
||||
}
|
||||
if(0 == strcmp(arg, "sync_read") || 0 == strcmp(arg, "async_read")){
|
||||
fuse_read_mode_set = true;
|
||||
return 1; // continue for fuse option
|
||||
}
|
||||
if(0 == STR2NCMP(arg, "mp_umask=")){
|
||||
mp_umask = strtol(strchr(arg, '=') + sizeof(char), NULL, 0);
|
||||
mp_umask &= (S_IRWXU | S_IRWXG | S_IRWXO);
|
||||
@ -4925,6 +4930,15 @@ int main(int argc, char* argv[])
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
// s3fs read is sync (fdent_lock is locked while reading)
|
||||
// FUSE is async read by default
|
||||
// switch FUSE to sync read to avoid hitting FUSE's max_background limit
|
||||
// as well as to make sure that big read requests that are splitted by the kernel
|
||||
// are always read in-order
|
||||
if (!fuse_read_mode_set && 0 != fuse_opt_add_arg(&custom_args, "-osync_read")){
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
// [NOTE]
|
||||
// exclusive option check here.
|
||||
//
|
||||
|
Loading…
Reference in New Issue
Block a user