[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: CD sizes again (and BoF reminder!)



On Sun, Jul 22, 2012 at 07:58:42PM +0300, Uoti Urpala wrote:
> Simon Paillard wrote:
> > , I understand debian-installer ask dpkg not to fsync:
> 
> >      - Run dpkg with --force-unsafe-io during installation; syncing is
> 
> This only affects one particular instance of syncing (which I think may
> be useless anyway on normal ext4 after write+rename reliability was
> improved in kernel commit 7d8f9f7d150dded7b68e61ca6403a1f166fb4edf). It
> does not disable ALL disk sync operations in dpkg, like
> installer/debootstrap use should.
> 
> I tested installing and purging libqt4-dev and some dependencies on ext4
> (total 17 packages).
> 
> With just force-unsafe-io in dpkg config:
> aptitude install libqt4-dev: 16 seconds
> aptitude --purge-unused purge libqt4-dev: 14 seconds
> 
> eatmydata aptitude install libqt-dev: 4-5 seconds
> eatmydata aptitude --purge-unused purge libqt4-dev: 4-5 seconds

You tested ext4.  On btrfs, dpkg is around an order of magnitude slower,
making using it without eatmydata a laughable idea.

And that's on a filesystem whose features include:
* transactions (so all dpkg processing could be done without a single fsync)
* writeable snapshots (if you happen to get a power loss right during an
  untransacted dpkg run with eatmydata, all you need is a [re]boot with
  subvol=my_last_checkpoint)

Thus, having an option to disable fsync in dpkg without unreliable
LD_PRELOAD tricks would be great.


-- 
Copyright and patents were never about promoting culture and innovations;
from the very start they were legalized bribes to give the king some income
and to let businesses get rid of competition.  For some history, please read
https://en.wikipedia.org/wiki/Statute_of_Monopolies_1623

Attachment: signature.asc
Description: Digital signature


Reply to: