Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 328985 - sys-devel/icecream: compile jobs don't get distributed anymore after upgrading to glibc-2.11.2
Summary: sys-devel/icecream: compile jobs don't get distributed anymore after upgradin...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Cluster Team
URL:
Whiteboard:
Keywords:
: 328987 328989 (view as bug list)
Depends on:
Blocks:
 
Reported: 2010-07-19 18:40 UTC by Thomas Elste
Modified: 2010-09-18 09:43 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
strace log of the failing ldconfig call from in icecc-create-env (strace.log,8.49 KB, text/plain)
2010-07-19 18:41 UTC, Thomas Elste
Details
Workaround, adding var/cache/ldconfig to icecream environment (icecream-ldconfig-auxcache.patch,354 bytes, patch)
2010-07-19 18:47 UTC, Thomas Elste
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Elste 2010-07-19 18:40:08 UTC
After upgrading to glibc-2.11.2 the distribution of compile jobs in a cluster of machines using icecream doesn't work anymore. All jobs are compiled on the local machine only.

Reproducible: Always

Steps to Reproduce:
1. Setup icecream (f.e. http://dev.gentoo.org/~rane/icecream.xml)
2. If not already done, upgrade to latest stable glibc
2. Try to compile something using icecream (f.e. kernel: PATH=/usr/lib/icecc/bin:$PATH make -j20 all

Actual Results:  
Watch as everything gets compiled on the local machine only and no speed up is achieved.

Expected Results:  
Compile jobs are distributed to all other (compatible) machines participating in the icecream cluster.

After some searching around I think I was able to figure out what's broken. The reason for icecream to stop working seems to be the last glibc update (sys-libs/glibc-2.11.2 on my machine). At some point in generating the icecream native environment tarball the icecream client calls "icecc --build-native" which calls /usr/lib/icecc/icecc-create-env which calls ldconfig which fails silently. Stracing the responsible ldconfig call revealed that it couldn't access some auxiliary cache file in /var/cache/ldconfig.

A quick workaround is, to add the path var/cache/ldconfig to the environment, which is created by the script. But there is probably a better solution.
For example ldconfig has an --ignore-aux-cache switch, which changes .... nothing in my case. Ldconfig seems to be ignoring it completely.
Other distributions have a patch included, to ignore ldconfig failures. I've tried this, too. But then I get compile errors from remote machines about missing libraries.
Comment 1 Thomas Elste 2010-07-19 18:41:13 UTC
Created attachment 239419 [details]
strace log of the failing ldconfig call from in icecc-create-env
Comment 2 Christian Ruppert (idl0r) gentoo-dev 2010-07-19 18:46:38 UTC
*** Bug 328987 has been marked as a duplicate of this bug. ***
Comment 3 Christian Ruppert (idl0r) gentoo-dev 2010-07-19 18:46:43 UTC
*** Bug 328989 has been marked as a duplicate of this bug. ***
Comment 4 Thomas Elste 2010-07-19 18:47:57 UTC
Created attachment 239423 [details, diff]
Workaround, adding var/cache/ldconfig to icecream environment

To try, copy to file dir and add epatch "${FILESDIR}/${PN}-ldconfig-auxcache.patch" to icecream ebuild.
Comment 5 Gregg Casillo 2010-09-17 23:45:24 UTC
I installed icecream-0.9.6 today, and it appears to be working again. Might as well close this bug since that release fixes this.
Comment 6 Tomáš Chvátal (RETIRED) gentoo-dev 2010-09-18 09:43:09 UTC
Thanks for headsup, closing since i removed all other versions.
Please open new bugs if you find any issues with current icecream :)