Remove now unnecessary 'sync()' calls
authorLinus Torvalds <torvalds@linux-foundation.org>
Fri, 30 May 2008 15:54:46 +0000 (08:54 -0700)
committerJunio C Hamano <gitster@pobox.com>
Sat, 31 May 2008 21:49:29 +0000 (14:49 -0700)
Since the pack-files are now always created stably on disk, there is no
need to sync() before pruning lose objects or old stale pack-files.

[jc: with Nico's clean-up]

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin-pack-objects.c
builtin-prune-packed.c
builtin-prune.c
git-repack.sh

index 4c2e0cd..447d492 100644 (file)
@@ -514,9 +514,10 @@ static void write_pack_file(void)
                 * Did we write the wrong # entries in the header?
                 * If so, rewrite it like in fast-import
                 */
-               if (pack_to_stdout || nr_written == nr_remaining) {
-                       unsigned flags = pack_to_stdout ? CSUM_CLOSE : CSUM_FSYNC;
-                       sha1close(f, sha1, flags);
+               if (pack_to_stdout) {
+                       sha1close(f, sha1, CSUM_CLOSE);
+               } else if (nr_written == nr_remaining) {
+                       sha1close(f, sha1, CSUM_FSYNC);
                } else {
                        int fd = sha1close(f, NULL, 0);
                        fixup_pack_header_footer(fd, sha1, pack_tmp_name, nr_written);
index 23faf31..241afbb 100644 (file)
@@ -85,7 +85,6 @@ int cmd_prune_packed(int argc, const char **argv, const char *prefix)
                /* Handle arguments here .. */
                usage(prune_packed_usage);
        }
-       sync();
        prune_packed_objects(opts);
        return 0;
 }
index 25f9304..bd3d2f6 100644 (file)
@@ -156,7 +156,6 @@ int cmd_prune(int argc, const char **argv, const char *prefix)
        mark_reachable_objects(&revs, 1);
        prune_object_dir(get_object_directory());
 
-       sync();
        prune_packed_objects(show_only);
        remove_temporary_files();
        return 0;
index 10f735c..072d1b4 100755 (executable)
@@ -125,7 +125,6 @@ then
        # We know $existing are all redundant.
        if [ -n "$existing" ]
        then
-               sync
                ( cd "$PACKDIR" &&
                  for e in $existing
                  do