Add high-resolution timekeeping functions (primarily for benchmarking).
[bluesky.git] / bluesky / file.c
index 5a4fe9b..14de372 100644 (file)
@@ -87,6 +87,7 @@ void bluesky_file_truncate(BlueSkyInode *inode, uint64_t size)
 void bluesky_file_write(BlueSkyInode *inode, uint64_t offset,
                         const char *data, gint len)
 {
+    g_print("Start write: %ld\n", bluesky_now_hires());
     g_return_if_fail(inode->type == BLUESKY_REGULAR);
     g_return_if_fail(offset < inode->size);
     g_return_if_fail(len <= inode->size - offset);
@@ -111,6 +112,8 @@ void bluesky_file_write(BlueSkyInode *inode, uint64_t offset,
     }
 
     bluesky_inode_update_ctime(inode, 1);
+    bluesky_inode_flush(inode->fs, inode);
+    g_print("End write: %ld\n", bluesky_now_hires());
 }
 
 void bluesky_file_read(BlueSkyInode *inode, uint64_t offset,
@@ -154,7 +157,7 @@ void bluesky_block_fetch(BlueSkyFS *fs, BlueSkyBlock *block)
         return;
 
     g_print("Fetching block from %s\n", block->ref);
-    BlueSkyRCStr *string = s3store_get(fs->store, block->ref);
+    BlueSkyRCStr *string = bluesky_store_get(fs->store, block->ref);
 
     bluesky_string_unref(block->data);
     block->data = bluesky_crypt_decrypt(string, fs->encryption_key);
@@ -176,7 +179,7 @@ void bluesky_block_flush(BlueSkyFS *fs, BlueSkyBlock *block)
     gchar *name = g_strdup(g_checksum_get_string(csum));
 
     g_print("Flushing block as %s\n", name);
-    s3store_put(fs->store, name, data);
+    bluesky_store_put(fs->store, name, data);
     g_free(block->ref);
     block->ref = name;