OPTION(bluestore_extent_map_shard_max_size, OPT_U32, 1200)
OPTION(bluestore_extent_map_shard_target_size, OPT_U32, 500)
OPTION(bluestore_extent_map_shard_min_size, OPT_U32, 150)
+OPTION(bluestore_extent_map_inline_shard_prealloc_size, OPT_U32, 256)
OPTION(bluestore_cache_type, OPT_STR, "2q") // lru, 2q
OPTION(bluestore_onode_cache_size, OPT_U32, 16*1024)
OPTION(bluestore_buffer_cache_size, OPT_U32, 512*1024*1024)
#undef dout_prefix
#define dout_prefix *_dout << "bluestore.extentmap(" << this << ") "
+BlueStore::ExtentMap::ExtentMap(Onode *o)
+ : onode(o),
+ inline_bl(g_conf->bluestore_extent_map_inline_shard_prealloc_size) {
+}
+
+
bool BlueStore::ExtentMap::update(Onode *o, KeyValueDB::Transaction t,
bool force)
{
bool inline_dirty = false;
bufferlist inline_bl; ///< cached encoded map, if unsharded; empty=>dirty
- ExtentMap(Onode *o) : onode(o) {}
+ ExtentMap(Onode *o);
bool encode_some(uint32_t offset, uint32_t length, bufferlist& bl,
unsigned *pn);