Cleaner fix part 1
[bluesky.git] / bluesky / store-kv.cc
index 6b863d8..59ba530 100644 (file)
@@ -39,6 +39,8 @@ static void kvstore_task(gpointer a, gpointer b)
                                                     value.length()),
                                             value.length());
             async->result = 0;
+        } else {
+            g_warning("Failed to fetch key %s from kvstore", async->key);
         }
         break;
     }
@@ -46,7 +48,9 @@ static void kvstore_task(gpointer a, gpointer b)
     case STORE_OP_PUT:
     {
         string value(async->data->data, async->data->len);
-        client->Put(async->key, value);
+        if (!client->Put(async->key, value)) {
+            g_warning("Failed to store key %s to kvstore", async->key);
+        }
         break;
     }
 
@@ -62,18 +66,21 @@ static gpointer kvstore_new(const gchar *path)
 {
     /* TODO: Right now we leak this memory.  We should probably clean up in
      * kvstore_destroy, but it's not a big deal. */
-    gchar **target = g_strsplit(path, ":", 0);
     const gchar *host = "127.0.0.1", *port = "9090";
-    if (target[0] != NULL) {
-        host = target[0];
-        if (target[1] != NULL) {
-            port = target[1];
+    if (path != NULL) {
+        gchar **target = g_strsplit(path, ":", 0);
+        if (target[0] != NULL) {
+            host = target[0];
+            if (target[1] != NULL) {
+                port = target[1];
+            }
         }
     }
 
     static volatile gsize once = 0;
     if (g_once_init_enter(&once)) {
-        thread_pool = g_thread_pool_new(kvstore_task, NULL, -1, FALSE, NULL);
+        thread_pool = g_thread_pool_new(kvstore_task, NULL,
+                                        bluesky_max_threads, FALSE, NULL);
         g_once_init_leave(&once, 1);
     }