Bugs item #1188492, was opened at 2005-04-23 09:21
Message generated for change (Comment added) made by drieseng
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=402868&aid=1188492&group_id=31650

>Category: Tasks
Group: 0.85
>Status: Closed
>Resolution: Fixed
Priority: 5
Submitted By: dminikitin (dminikitin)
>Assigned to: Gert Driesen (drieseng)
Summary: Very slow builds of the solutions with many projects

Initial Comment:
With Nant 0.85rc2 it takes unacceptably long to build 
solutions with large number of projects and high rate of 
dependencies between projects. For example, a 
solution with 60 projects (C#) took ~60 minutes to build 
in Nant, whereas in dev studio it takes ~60 seconds. 

The problem was traced to the way Nant builds the list 
of output files for the solution [GetOutputFiles() method 
and related methods). Nant uses recursive algorithm 
where for each project it determines its references, for 
each reference it determins its references and so on. 
The problem is that recursion termination wasn't 
implemented correctly for the cases when the reference 
has already been processed. 

Attached is the zip archive with fixes. All files are from 
NAnt.VSNet directory.

The fixes implement recursion termination for the 
already processed references and change the method 
singnatures from "public Hashtable GetOutputFiles
(string configuration)" to "public void GetOutputFiles
(string configuration, Hashtable outputFiles)". The latter 
fix is to avoid unnecessary creation/destruction of 
hashtables.

----------------------------------------------------------------------

>Comment By: Gert Driesen (drieseng)
Date: 2005-05-05 10:17

Message:
Logged In: YES 
user_id=707851

This is now committed in cvs.

Thanks !!

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=402868&aid=1188492&group_id=31650


-------------------------------------------------------
This SF.Net email is sponsored by: NEC IT Guy Games.
Get your fingers limbered up and give it your best shot. 4 great events, 4
opportunities to win big! Highest score wins.NEC IT Guy Games. Play to
win an NEC 61 plasma display. Visit http://www.necitguy.com/?r=20
_______________________________________________
nant-developers mailing list
nant-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nant-developers

Reply via email to