svn - Dismal svnant performance -
i facing problem svnant. <svnmodified /> takes on 3 minutes complete on working copy (svn metadata version 1.7: using latest svnant head). if try check modifications using tortoisesvn 1.7.12 takes under 3 seconds. if svn status command prompt takes under 3 seconds.
my test build file looks this:
<project name="tools" default="default" basedir="."> <path id="paths.classpath"> <fileset dir="." casesensitive="false"> <include name="svnant/**/*.jar" /> </fileset> </path> <typedef resource="org/tigris/subversion/svnant/svnantlib.xml" classpathref="paths.classpath" /> <fileset id="filesets.svn.modified" dir="c:/workspace/projects"> <svnmodified /> </fileset> <target name="default"> <pathconvert pathsep="
" property="target.output" refid="filesets.svn.modified" /> <echo>${target.output}</echo> </target> </project> am doing wrong? tried upgrading svnkit latest version made no difference. including many or few jars? other details: ant 1.9.0, windows 7 x64, java 1.7.0_21 x64
my libs:
+---lib antlr-runtime-3.4.jar jna-3.4.0.jar license-antlr.txt license-javahl.txt license-jna.txt license-sequence.txt license-sqljet.txt license-trilead.txt sequence-library-1.0.2.jar sqljet-1.1.7.jar svn-javahl.jar svnant.jar svnclientadapter.jar svnkit-1.7.9.jar svnkit-cli-1.7.9.jar svnkit-javahl16-1.7.9.jar trilead-ssh2-1.0.0-build216.jar
i don't know sure, guess when using svnmodified, svn being queried each file under c:/workspace/projects. when using svn status command line or tortoisesvn, happens within svn software. in first case there lot of little queries 1 file, in second case there 1 query whole file tree.
to improve performance, way can think of is:
calling
svn status(viaexecorsvnanttasks) , outputfilter output regexp keep interesting lines modified files
make list of file names , use
resourcelistbuild resource collection flat list of names
some links might interested in implement it:
Comments
Post a Comment