~ubuntu-branches/ubuntu/lucid/dpkg/lucid-updates

« back to all changes in this revision

Viewing changes to src/processarc.c

  • Committer: Colin Watson
  • Date: 2010-04-14 09:57:59 UTC
  • Revision ID: cjwatson@canonical.com-20100414095759-61o9ofgmq36dcfa2
* Backport from upstream (with corrections, sent upstream):
  - Defer the fsync and rename for normal files in tar extraction so that
    it's done in one pass afterwards, to avoid massive I/O degradation due
    to the serialization from each write + fsync. This restores extraction
    times to numbers closer to the ones before the fsync patch introduced
    in 1.15.6.

Show diffs side-by-side

added added

removed removed

Lines of Context:
621
621
  p1[0] = -1;
622
622
  subproc_wait_check(c1, BACKEND " --fsys-tarfile", PROCPIPE);
623
623
 
 
624
  tar_deferred_extract(newfileslist, pkg);
 
625
 
624
626
  if (oldversionstatus == stat_halfinstalled || oldversionstatus == stat_unpacked) {
625
627
    /* Packages that were in `installed' and `postinstfailed' have been reduced
626
628
     * to `unpacked' by now, by the running of the prerm script.