[Rake-devel] Comments about parallel building

James M. Lawrence quixoticsycophant at gmail.com
Mon Jun 7 02:39:39 EDT 2010


Thanks for this work, Heath.  I've pushed a version of your patch and
added some tests.

You corrected an inadequate fix I made for some curious behavior in
mainline rake, mentioned in the second half of
http://rubyforge.org/pipermail/rake-devel/2008-October/000610.html

Though my solution is more efficient, it fails on a kite-shaped graph
(a diamond with a tail).  However your solution is simpler, nicer and
(incidentally!) fixes the problem.

Do you have an example which shows the reason for the "if needed?"
clause after "task.execute(task_args)" in your patch?  I'd be
surprised if that does anything; nodes are executed only once, and
duplicate nodes are not possible (being keyed on object_id).

While investigating this bug I found some more curiosities with
mainline rake (next email).

JL

On Thu, May 20, 2010 at 11:42 AM, Heath Kehoe <hkehoe at budcat.com> wrote:
>
> On 5/19/2010 1:00 PM, Heath Kehoe wrote:
>>
>> So we're sticking with ruby 1.8 for now. As I said, perhaps drake's
>> approach will be better for 1.9, I'll try that out sometime.
>>
>> -heath
>>
>>
>
> I tried drake, and it is promising, since its compute tree model is much
> more efficient than the MultiTask model I was using, especially in null
> builds (no creating/joining of thousands of threads).
>
> However, it has a bug that prevents me from deploying it in our project;
> that bug is it sometimes fails to execute tasks during parallel builds. I
> created a simple test case and filed a bug on the drake rubyforge tracker.
>
> -h


More information about the Rake-devel mailing list