You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ant.apache.org by Antoine Levy-Lambert <an...@antbuild.com> on 2003/08/20 14:27:31 UTC
bug #20103 - performance of FTPDirectoryScanner
I am attaching an improved patch on http://nagoya.apache.org/bugzilla/show_bug.cgi?id=20103.
This patch speeds up FTP scanning against case sensitive file systems (when followsymlinks = true) when the include patterns are of the type some/very/long/path.
The code autodetects whether the remote system is case sensitive. The way it is done is that if the system encounters a subdirectory called alpha and there is no subdirectory called ALPHA in the same path, it will attempt to cd to ALPHA.
If this fails, the code will draw the conclusion that the remote system is case sensitive.
If the user did not set followsymlinks="false", then there is no reason to scan each path component of some/very/long/path to check the spelling. Trying to go directly to some/very/long/path will tell immediately if this path exists or not.
I will commit my patch in the next days if there are no comments.
Here are some results :
1 scan src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java
2 scan src/main/**/*.java
(figures in milliseconds to run a scan)
system
Windows - hummingbird FTP server
1-old 2063
1-new 2163
2-old 29573
2-new 29523
UNIX (cvs.apache.org)
1-old 197
1-new 48
2-old 1590
2-new 1443
Cheers,
Antoine