OPTION(osd_pool_default_flags, OPT_INT, 0) // default flags for new pools
OPTION(osd_pool_default_flag_hashpspool, OPT_BOOL, true) // use new pg hashing to prevent pool/pg overlap
OPTION(osd_pool_default_hit_set_bloom_fpp, OPT_FLOAT, .05)
+OPTION(osd_pool_default_cache_target_dirty_ratio, OPT_FLOAT, .4)
+OPTION(osd_pool_default_cache_target_full_ratio, OPT_FLOAT, .8)
OPTION(osd_hit_set_min_size, OPT_INT, 1000) // min target size for a HitSet
OPTION(osd_hit_set_namespace, OPT_STR, ".ceph-internal") // rados namespace for hit_set tracking
pi->auid = auid;
pi->properties = properties_map;
pi->stripe_width = stripe_width;
+ pi->cache_target_dirty_ratio_micro =
+ g_conf->osd_pool_default_cache_target_dirty_ratio * 1000000;
+ pi->cache_target_full_ratio_micro =
+ g_conf->osd_pool_default_cache_target_full_ratio * 1000000;
pending_inc.new_pool_names[pool] = name;
return 0;
}
::decode(cache_min_flush_age, bl);
::decode(cache_min_evict_age, bl);
} else {
- pg_pool_t def;
- target_max_bytes = def.target_max_bytes;
- target_max_objects = def.target_max_objects;
- cache_target_dirty_ratio_micro = def.cache_target_dirty_ratio_micro;
- cache_target_full_ratio_micro = def.cache_target_full_ratio_micro;
- cache_min_flush_age = def.cache_min_flush_age;
- cache_min_evict_age = def.cache_min_evict_age;
+ target_max_bytes = 0;
+ target_max_objects = 0;
+ cache_target_dirty_ratio_micro = 0;
+ cache_target_full_ratio_micro = 0;
+ cache_min_flush_age = 0;
+ cache_min_evict_age = 0;
}
DECODE_FINISH(bl);
tier_of(-1), read_tier(-1), write_tier(-1),
cache_mode(CACHEMODE_NONE),
target_max_bytes(0), target_max_objects(0),
- cache_target_dirty_ratio_micro(400000),
- cache_target_full_ratio_micro(800000),
+ cache_target_dirty_ratio_micro(0),
+ cache_target_full_ratio_micro(0),
cache_min_flush_age(0),
cache_min_evict_age(0),
hit_set_params(),