[OE-core] sharing DL_DIR?
Rich Pixley
rich.pixley at palm.com
Thu Feb 23 00:50:07 UTC 2012
Excellent, thanks. That's the news I was hoping for.
--rich
On 2/22/12 15:41 , Saul Wold wrote:
> On 02/22/2012 03:33 PM, Rich Pixley wrote:
>> Is it reasonable to expect to share DL_DIR between multiple builds?
>>
> Absolutely, We share DL_DIR via NFS across multiple machines and 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?
>>
> Yes, as far as I know.
>
>> Or must each build download it's own copies of every component?
>>
> No need.
>
>> 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.
>>
> I think we are using a very basic locking mechism that creates the
> lockfile and a donefile when complete. It seems to work well enough.
>
> Sau!
>
>> --rich
>>
>>
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core at lists.openembedded.org
>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
More information about the Openembedded-core
mailing list