delete o;
}
+ceph_file_layout MDCache::gen_default_file_layout(const MDSMap &mdsmap)
+{
+ ceph_file_layout result = g_default_file_layout;
+ result.fl_pg_pool = mdsmap.get_first_data_pool();
+ return result;
+}
-void MDCache::init_layouts()
+ceph_file_layout MDCache::gen_default_log_layout(const MDSMap &mdsmap)
{
- default_file_layout = g_default_file_layout;
- default_file_layout.fl_pg_pool = mds->mdsmap->get_first_data_pool();
-
- default_log_layout = g_default_file_layout;
- default_log_layout.fl_pg_pool = mds->mdsmap->get_metadata_pool();
+ ceph_file_layout result = g_default_file_layout;
+ result.fl_pg_pool = mdsmap.get_metadata_pool();
if (g_conf->mds_log_segment_size > 0) {
- default_log_layout.fl_object_size = g_conf->mds_log_segment_size;
- default_log_layout.fl_stripe_unit = g_conf->mds_log_segment_size;
+ result.fl_object_size = g_conf->mds_log_segment_size;
+ result.fl_stripe_unit = g_conf->mds_log_segment_size;
}
+
+ return result;
+}
+
+void MDCache::init_layouts()
+{
+ default_file_layout = gen_default_file_layout(*(mds->mdsmap));
+ default_log_layout = gen_default_log_layout(*(mds->mdsmap));
+
}
void MDCache::create_unlinked_system_inode(CInode *in, inodeno_t ino,
#include "RecoveryQueue.h"
#include "StrayManager.h"
#include "MDSContext.h"
+#include "MDSMap.h"
#include "messages/MClientRequest.h"
#include "messages/MMDSSlaveRequest.h"
unsigned max_dir_commit_size;
+ static ceph_file_layout gen_default_file_layout(const MDSMap &mdsmap);
+ static ceph_file_layout gen_default_log_layout(const MDSMap &mdsmap);
+
ceph_file_layout default_file_layout;
ceph_file_layout default_log_layout;