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

Bug#764204: apt-cache calls fcntl() on 65536 FDs



Hi,

On 25 May 2015 at 15:32, Julian Andres Klode <jak@debian.org> wrote:
> I don't really see the performance issue here, though. I don't know
> why the submitter thinks that there is a performance issue here. The
> closing takes a few milliseconds. An apt-cache show runs in 0.040s
> here, and has never taken longer for me.

on my fastest machine, a single apt-cache show takes 0.06s on Jessie.
However, the same apt-cache show takes less than 0.006s on Wheezy.

For a single run on a fast machine, this isn't too bad, but on a slow
machine this really hurts a lot. When running docker on my laptop, a
single apt-cache show takes about 2.7 seconds on jessie, whereas it
took only 1.4 seconds on wheezy.

Jessie:

root@b49835d0cc64:~# time apt-cache show mg > /dev/null
real 0m2.708s
user 0m1.830s
sys 0m0.850s

Wheezy:

root@df40952198bb:~# time apt-cache show mg > /dev/null
real 0m1.441s
user 0m1.260s
sys 0m0.190s

Even the 0.06s are quite noticeable when using tools such as Chef,
which produce one apt-cache call per package check. On my fastest
machine, checking the status for ~70 packages used to take
approximately 400ms on wheezy, but takes more than four seconds with
jessie. Obviously the situation is much worse with docker and on
slower systems.

> So I'd prefer to just close this, as it's not worth the extra effort
> to read out /proc/self/fd.

How about using the O_CLOEXEC flag when opening files?

Best,
Sebastian


Reply to: