Allow cloudlog items to be unreferenced in the background.
[bluesky.git] / bluesky / inode.c
index 41227fb..0d40da4 100644 (file)
@@ -94,6 +94,8 @@ BlueSkyFS *bluesky_new_fs(gchar *name)
     fs->log_state = g_new0(BlueSkyCloudLogState, 1);
     fs->log_state->data = g_string_new("");
 
+    bluesky_cloudlog_threads_init(fs);
+
     return fs;
 }
 
@@ -106,7 +108,7 @@ BlueSkyFS *bluesky_init_fs(gchar *name, BlueSkyStore *store)
 
     if (bluesky_checkpoint_load(fs)) {
         g_print("Filesystem checkpoint loaded, starting journal replay...\n");
-        //bluesky_replay(fs);
+        bluesky_replay(fs);
         g_print("Journal replay complete, filesystem ready.\n");
     } else {
         /* Initialize a fresh filesystem */
@@ -348,7 +350,7 @@ static void complete_inode_fetch(BlueSkyInode *inode)
 {
     BlueSkyCloudLog *item = inode->committed_item;
     inode->committed_item = NULL;
-    g_print("Completing fetch of inode %"PRIu64"...", inode->inum);
+    g_print("Completing fetch of inode %"PRIu64"...\n", inode->inum);
 
     g_mutex_lock(item->lock);
     bluesky_cloudlog_fetch(item);