DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=29743>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=29743

modified selector has poor cachefile save performance

           Summary: modified selector has poor cachefile save performance
           Product: Ant
           Version: 1.6.1
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: Enhancement
          Priority: Other
         Component: Core
        AssignedTo: [EMAIL PROTECTED]
        ReportedBy: [EMAIL PROTECTED]
                CC: [EMAIL PROTECTED]


The modified selector has the default behavior of saving cache information to a
propertiesfile when a change to a file is recognized.  This file comparison is
performed when the isSelected(File basedir, String filename, File file) method
is called upon the selector.  It is at this point that the propertiesfile will
be updated ( rewritten ).

The propertiesfile will be rewritten every time a modified file is found.  
When working with large filesets that have many changes, in my case 15000, this
leads to poor performance as the properties file is rewritten many times ( up to
15000 times in my case ).

I would like to be able to delay the writing of this file til some later point,
after multiple changes are found.  Unfortunately, the selector framework really
only understands the context of one file, through the isSelected method.  A
selector does not know when we are finished processing a fileset or possibly
finished with the selector all together ( unless I am missing a piece in the
selector architecture ).

A possibility is to add one or more methods to BaseSelector, that a custom
selector could override.  

In the case of the modified selector, we may be able to get away with knowing we
are finished with the selector through some method call like "tearDown".  At
this point, the modified selector could save its properites file.  

Another option is to add filesetListener type of behavior to the BaseSelector. 
This would notify a selector when a fileset selection has started and ended. 
With this option, the modified selector could save its properties file and the
end of fileset selection.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to