]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
Hadoop: Don't use the local pg by default.
authorGreg Farnum <gregf@hq.newdream.net>
Tue, 3 Nov 2009 00:37:38 +0000 (16:37 -0800)
committerGreg Farnum <gregf@hq.newdream.net>
Tue, 3 Nov 2009 00:38:15 +0000 (16:38 -0800)
src/client/hadoop/CephFSInterface.cc

index a379e31d5b2e873ba7d918d0c1bfba4bfa098a64..869b22bf9ada368437ae8c0208439cc80c416b31 100644 (file)
@@ -33,8 +33,10 @@ JNIEXPORT jboolean JNICALL Java_org_apache_hadoop_fs_ceph_CephTalker_ceph_1initi
 
   //construct an arguments vector
   vector<string> args_vec;
+  string arg;
   size_t i = 0;
   size_t j = 0;
+  bool local_writes = false;
   while (1) {
     j = args.find(' ', i);
     if (j == string::npos) {
@@ -46,8 +48,13 @@ JNIEXPORT jboolean JNICALL Java_org_apache_hadoop_fs_ceph_CephTalker_ceph_1initi
       args_vec.push_back(args.substr(i, args.size()));
       break;
     }
-    if (j!=i) //if there are two spaces in a row, dont' make a new arg
-      args_vec.push_back(args.substr(i, j-i));
+    if (j!=i) { //if there are two spaces in a row, don't make a new arg
+      arg = args.substr(i, j-i);
+      if (arg.compare("set_local_pg") == 0)
+       local_writes = true;
+      else
+       args_vec.push_back(arg);
+    }
     i = j+1;
   }
 
@@ -66,8 +73,8 @@ JNIEXPORT jboolean JNICALL Java_org_apache_hadoop_fs_ceph_CephTalker_ceph_1initi
   if (r < 0) return false;
   r = ceph_mount();
   if (r < 0) return false;
-
-  ceph_set_default_preferred_pg(ceph_get_local_osd());
+  if (local_writes)
+    ceph_set_default_preferred_pg(ceph_get_local_osd());
   return true;
 }