Package: dpkg
Version: 1.17.26
Severity: important

Dear Maintainer,

   * What led up to the situation?

   Installation of a system takes an extreme long time. The systems have
   RAID controllers included:

   - Serial Attached SCSI controller: LSI Logic / Symbios Logic SAS2008 
PCI-Express Fusion-MPT SAS-2
   - Serial Attached SCSI controller: Intel Corporation C606 chipset Dual 
4-Port SATA/SAS Storage Control Unit

   Classic SATA harddisks are connected to the IO controllers.

   Normally an install takes 10 minutes. On these systems it takes 50
   minutes.

   Machine informations:

Base Board Information
        Manufacturer: Supermicro
        Product Name: X9DR3-F
        Version: 1.11A
        Serial Number: VM2BS00000
        Asset Tag: To be filled by O.E.M.
        Features:
                Board is a hosting board
                Board is replaceable
        Location In Chassis: To be filled by O.E.M.
        Chassis Handle: 0x0003
        Type: Motherboard
        Contained Object Handles: 0

Base Board Information
        Manufacturer: Supermicro
        Product Name: X8DTH
        Version: 11A
        Serial Number: M0IS00000
        Asset Tag: To Be Filled By O.E.M.
        Features:
                Board is a hosting board
                Board is replaceable
        Location In Chassis: To Be Filled By O.E.M.
        Chassis Handle: 0x0003
        Type: Motherboard
        Contained Object Handles: 0

   * What exactly did you do (or not do) that was effective (or
     ineffective)?

   Perform a normal install process.

   * Analysis

   By bisecting the source code of "dpkg" package with git showed that
   commit 87b0b20b86407baf1deb4e91b3fd839e01228ac8

        commit 87b0b20b86407baf1deb4e91b3fd839e01228ac8
        Author: Guillem Jover <[email protected]>
        Date:   Tue Jul 15 21:00:52 2014 +0200

            dpkg: Try to preallocate the disk size for extracted files
            
            This might help in avoiding filesystem fragmentation, and possibly
            improve performance on some filesystems.
            
            We use the system specific methods if available, and only use
            posix_fallocate() if nothing else is available, because on some 
systems
            its semantics are counter to what we want to obtain here, as the 
libc
            library will fallback to manually writing '\0' to each block to 
force
            the preallocation, instead of just failing and leaving the 
application
            to do so if desired.

   introduced the massive slow down of the install process.

   After "git revert" of this commit the installation behaved as expected.

   So the problematic system call on these systems is "fallocate".

-- System Information:
Debian Release: 8.4
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.16.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages dpkg depends on:
ii  libbz2-1.0   1.0.6-7+b3
ii  libc6        2.19-18+deb8u4
ii  liblzma5     5.1.1alpha+20120614-2+b3
ii  libselinux1  2.3-2
ii  tar          1.27.1-2+b1
ii  zlib1g       1:1.2.8.dfsg-2+b1

dpkg recommends no packages.

Versions of packages dpkg suggests:
ii  apt  1.0.9.8.3

-- no debconf information

Reply via email to