]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
crush/CrushWrapper: explicitly set tunables on create, decode
authorSage Weil <sage@inktank.com>
Tue, 3 Dec 2013 06:12:14 +0000 (22:12 -0800)
committerSage Weil <sage@inktank.com>
Tue, 3 Dec 2013 06:12:14 +0000 (22:12 -0800)
Set the tunables to the 'default' values on create.

Default to the legacy values when we decode, so that an old map without
values defined gets legacy values.

Signed-off-by: Sage Weil <sage@inktank.com>
src/crush/CrushWrapper.cc
src/crush/CrushWrapper.h

index d17166bc4a9fe7905e167b22e47dde8d504bc5d9..d16f766658750d719e7fb34322b4be8afc7898e0 100644 (file)
@@ -828,6 +828,9 @@ void CrushWrapper::decode(bufferlist::iterator& blp)
   ::decode(crush->max_rules, blp);
   ::decode(crush->max_devices, blp);
 
+  // legacy tunables, unless we decode something newer
+  set_tunables_legacy();
+
   try {
     // buckets
     crush->buckets = (crush_bucket**)calloc(1, crush->max_buckets * sizeof(crush_bucket*));
index b4bb67bb7429b16b2125e153391a53e291a1ca3e..72ad52e2c7278462e01ec9a3d5327154c2721b46 100644 (file)
@@ -95,6 +95,8 @@ public:
     crush = crush_create();
     assert(crush);
     have_rmaps = false;
+
+    set_tunables_default();
   }
 
   // tunables