[Bug 570805] Re: [regression] dpkg's fsync causes massive regression in Ubuntu Server and Alternate installation times

Colin Watson cjwatson at canonical.com
Mon Jun 28 14:42:21 UTC 2010


** Changed in: dpkg (Ubuntu Lucid)
     Assignee: (unassigned) => Colin Watson (cjwatson)

** Changed in: dpkg (Ubuntu Lucid)
       Status: Triaged => In Progress

** Description changed:

  Binary package hint: dpkg
  
  dpkg (1.15.5.6ubuntu4) causes a massive regression in the installation
  of the Ubuntu Server.
  
  Specifically, this from the changelog, addressing Bug #559915:
  
-     - Restore fsync during package unpack (LP: #559915).  This is now done
-       by deferring 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.  When
-       creating hard links to normal files on extraction use the .dpkg-new
-       filename for source as the file is not yet in place due to the rename
-       deferral.
+     - Restore fsync during package unpack (LP: #559915).  This is now done
+       by deferring 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.  When
+       creating hard links to normal files on extraction use the .dpkg-new
+       filename for source as the file is not yet in place due to the rename
+       deferral.
  
  I just installed the same hardware, from the same USB stick, in an
  identical configuration, one on ext4 and the other on ext3.
  
  On ext4, this took 19 minutes, 20 seconds.  On ext3, this took 9
  minutes, 8 seconds.
  
  This is a 100% performance hit on Server installs.  It takes now takes
  over twice as long to install Ubuntu servers.
  
  While I can understand that the fsyncs() are necessary for power loss
  situations on apt-get upgrade/dpkg operations *after* the system has
  been installed, it should not be necessary at Server install time.  If
  you lose power during a d-i installation, you will clearly need to start
  from scratch anyway.
  
  The desktop installer does not suffer from this since ubiquity
  installations simply transfer the live image.
+ 
+ DEVELOPMENT BRANCH: Addressed in a merge from Debian by using one large
+ sync before embarking on renames, rather than lots of little fsyncs.
+ 
+ PATCH: http://bazaar.launchpad.net/~ubuntu-
+ branches/ubuntu/lucid/dpkg/lucid/revision/95
+ 
+ TEST CASE: Install Ubuntu Server; measure time taken in "Select and
+ install software" step.  Compare 10.04 as released to the 10.04.1
+ candidate CD images which should be available for testing in the near
+ future.

-- 
[regression] dpkg's fsync causes massive regression in Ubuntu Server and Alternate installation times
https://bugs.launchpad.net/bugs/570805
You received this bug notification because you are a member of Kernel
Bugs, which is subscribed to Linux.




More information about the kernel-bugs mailing list