<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - Performance regression in git compared 2.11"
href="https://bugs.freedesktop.org/show_bug.cgi?id=94427#c7">Comment # 7</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - Performance regression in git compared 2.11"
href="https://bugs.freedesktop.org/show_bug.cgi?id=94427">bug 94427</a>
from <span class="vcard"><a class="email" href="mailto:ebiggers3@gmail.com" title="ebiggers3@gmail.com">ebiggers3@gmail.com</a>
</span></b>
<pre>I have been encountering this bug after upgrading from fontconfig 2.11.1-2 to
fontconfig 2.11.94-1 yesterday.
I can confirm the previous post that places the blame on the following commit:
commit f44bfad235e63bb792c38e16ae1fbd281ec1453b
Author: Akira TAGOH <<a href="mailto:akira@tagoh.org">akira@tagoh.org</a>>
Date: Thu Jun 5 19:06:02 2014 +0900
Workaround another race condition issue
See <a href="https://bugzilla.redhat.com/show_bug.cgi?id=921706">https://bugzilla.redhat.com/show_bug.cgi?id=921706</a>
Also, the main reason for the performance regression is not the stat() calls
per se, but rather the inefficient "string sets" which take n^2 time to build,
causing millions of string comparisons to occur when any application is
started. See FcStrSetMember(), called by _FcStrSetAppend().
Still, the entire "directory scan" seems unnecessary to me. I don't yet fully
understand what problem this change was meant to solve, but in my opinion it's
not acceptable to iterate through all font files. The purpose of the
fontconfig cache is to make that unnecessary, is it not?</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>