Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Steffen Sledz <sledz@dresearch-fe.de>
To: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: openembedded-devel <openembedded-devel@lists.openembedded.org>,
	openembedded-core <openembedded-core@lists.openembedded.org>
Subject: Re: fetch race problem
Date: Tue, 07 Apr 2015 10:35:22 +0200	[thread overview]
Message-ID: <552396CA.7060806@dresearch-fe.de> (raw)
In-Reply-To: <1427195564.14020.31.camel@linuxfoundation.org>

Am 24.03.2015 um 12:12 schrieb Richard Purdie:
> On Tue, 2015-03-24 at 12:00 +0100, Steffen Sledz wrote:
>> We hit the following problem in oe-classic. And we're not sure if this problem may occur in current oe too, or if it is fixed there.
>>
>> They are two or more recipes (may be in different layers) for packages with sources from the same (git) repository. If the fetching from the repo needs some time we see "file changed as we read it" errors in all likelihood.
>>
>> ------------------> snip <-------------------
>> ERROR: Error evaluating '${PF}:${P}:${PN}:${BP}:${BPN}:files:.'
>> Traceback (most recent call last):
>>   File "/CACHE/jenkins-workspace/foo/bitbake/lib/bb/data_smart.py", line 116, in expandWithRefs
>>     s = __expand_var_regexp__.sub(varparse.var_sub, s)
>>   File "/CACHE/jenkins-workspace/foo/bitbake/lib/bb/data_smart.py", line 60, in var_sub
>>     var = self.d.getVar(key, 1)
>>   File "/CACHE/jenkins-workspace/foo/bitbake/lib/bb/data_smart.py", line 260, in getVar
>>     return self.expand(value, var)
>>   File "/CACHE/jenkins-workspace/foo/bitbake/lib/bb/data_smart.py", line 132, in expand
>>     return self.expandWithRefs(s, varname).value
>>   File "/CACHE/jenkins-workspace/foo/bitbake/lib/bb/data_smart.py", line 116, in expandWithRefs
>>     s = __expand_var_regexp__.sub(varparse.var_sub, s)
>> FetchError: Fetch command export HOME="/var/lib/jenkins"; export PATH="/CACHE/jenkins-workspace/foo/OE//bin:/CACHE/jenkins-workspace/foo/openembedded/bin:/CACHE/jenkins-workspace/foo/OE/tmp.7/sysroots/x86_64-linux/usr/armv5te/bin:/CACHE/jenkins-workspace/foo/OE/tmp.7/sysroots/x86_64-linux/usr/sbin:/CACHE/jenkins-workspace/foo/OE/tmp.7/sysroots/x86_64-linux/usr/bin:/CACHE/jenkins-workspace/foo/OE/tmp.7/sysroots/x86_64-linux/sbin:/CACHE/jenkins-workspace/foo/OE/tmp.7/sysroots/x86_64-linux//bin:/CACHE/jenkins-workspace/foo/OE/bin-HYP-6339:/CACHE/jenkins-workspace/foo/bitbake/bin:/sbin:/usr/sbin:/bin:/usr/bin"; tar -czf /var/lib/jenkins/sources/git_bitbucket.org.dresearchfe.drconfig.git.tar.gz ./.git/* failed with signal 1, output:
>> /bin/tar: ./.git/objects/pack/tmp_pack_BwThcc: File removed before we read it
>> /bin/tar: ./.git/objects/pack/tmp_pack_Ans7xK: File removed before we read it
>> /bin/tar: ./.git/objects/pack: file changed as we read it
>> ------------------> snap <-------------------
>>
>> Is this a problem in oe-core too (or oe-classic only)?
>>
>> Any ideas how to avoid such errors?
> 
> In theory bitbake has locks on files in DL_DIR, even for git
> repositories so it should only touch the repo with one fetch process at
> a time even if multiple recipes reference the same thing.
> 
> There were some big fetcher reworks in more recent versions of bitbake.
> For OE-Classic, I'm guessing you're using an older version. You could
> try transplanting the modern fetcher core onto your older bitbake I
> guess.

I do not feel competent enough to try this.

Is it possible (in oe-classic) to mark two or more recipes (or single stages) to run exclusive?




  reply	other threads:[~2015-04-07  8:35 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-24 11:00 fetch race problem Steffen Sledz
2015-03-24 11:12 ` Richard Purdie
2015-04-07  8:35   ` Steffen Sledz [this message]
2015-04-07 12:29     ` Richard Purdie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=552396CA.7060806@dresearch-fe.de \
    --to=sledz@dresearch-fe.de \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=openembedded-devel@lists.openembedded.org \
    --cc=richard.purdie@linuxfoundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox