[OE-core] sharing DL_DIR?
Rich Pixley
rich.pixley at palm.com
Thu Feb 23 00:47:38 UTC 2012
What happens if two separate bitbake invocations both simultaneously
attempt to download the same file?
--rich
On 2/22/12 15:41 , Christopher Larson wrote:
> I share it as well. I don't see locks being a big issue for most
> things, as the worst case is a re-download, not use of a corrupt or
> incomplete file, due to the completion stamps.
>
> --
> Christopher Larson
>
> On Wednesday, February 22, 2012 at 4:39 PM, Tom King wrote:
>
>> I have a single downloads directory with symlinks for every target
>> build I have to that directory. As long as I have the source already
>> in there I don't fetch it again
>>
>> Tom
>>
>> On Wed, Feb 22, 2012 at 1:33 PM, Rich Pixley <rich.pixley at palm.com
>> <mailto:rich.pixley at palm.com>> wrote:
>>> Is it reasonable to expect to share DL_DIR between multiple builds?
>>>
>>> That is, are downloads properly locked so that multiple concurrent
>>> downloads of the same file won't collide? And if so, are they NFS
>>> safe locks?
>>>
>>> Or must each build download it's own copies of every component?
>>>
>>> I ask because our, (Palm), branch has been, but it's a bit of a
>>> nuisance to pick a suitable locking mechanism that is both
>>> functional and performant.
>>>
>>> * Flock/lockf aren't reliably supported in heterogeneous environments.
>>> * The old lockfiles don't work over NFS. Lock directories
>>> apparently do, but trying to clean these up after interruptions
>>> or failures is a losing battle so if we do use these, we end up
>>> with orphan locks periodically.
>>> * With NFS as a possibility, we can't assume any kernel local IPC
>>> mechanism, so sysV ipc is out.
>>> * It seems like a pretty huge overhead to try to create any sort
>>> of zeroconf overhead.
>>>
>>> Our solution so far has been to use NFS lock directories for
>>> multiple machine builds and flock/lockf for single machine builds.
>>> This mostly works, though it's not ideal, and it's significantly
>>> faster than downloading/copying all of the component source multiple
>>> times even over local mirrors.
>>>
>>> --rich
>>>
>>> _______________________________________________
>>> Openembedded-core mailing list
>>> Openembedded-core at lists.openembedded.org
>>> <mailto:Openembedded-core at lists.openembedded.org>
>>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>>>
>>
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core at lists.openembedded.org
>> <mailto:Openembedded-core at lists.openembedded.org>
>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20120222/3f3d6885/attachment-0002.html>
More information about the Openembedded-core
mailing list