« Return to Thread: Seeking SVNKit speedup via JavaHL -

Seeking SVNKit speedup via JavaHL -

by Andy Cohen-2 :: Rate this Message:

Reply to Author | View in Thread

I have a fairly large program which selectively merges ranges of
revisions from one branch to another. This program originally invoked
the SVN command-line programs and parsed their output directly. When I
converted the program to use SVNKit, the program became much simpler,
much more robust, much more maintainable, and much slower.

I don't want to go back to my old way of doing things - I'd much prefer
to use SVNKit more efficiently.

When my program starts up, it first runs "svn log" several times to
gather data about various revisions. I tried using SVNKit's "jna"
facilities to speed up this operation, but as near as I can tell, SVNKit
does not use jna when performing its doLog() operation. Is that right?

Next, I tried to use javaHL. I converted my program to use the
org.tigris.subversion.javahl.SVNClient API instead of the
com.iii.svn.Subversion.svnLogClient.SVNLogClient API. When I ran my
newly javaHL-centric program, however, SVNClient.logMessages() returned
immediately. Fast is good, but this was a little too fast. When I
examined SVNClientImpl.java, I found an empty implementation of
SVNClient.logMessages(), with only a "TODO" comment inside it.

So, I'm feeling a little doomed, and I have two questions:

   1) Is there really no way to use jna to speed up svnLogClient.doLog()?
   2) Is there really no way to run SVNClientImpl.logMessages()?
   3) Is there anything else I could do to speed up this operation? I've
checked, and
       my handler really takes up very little of the total time.

I'm hoping that someone will show me that I've missed something huge and
obvious!
Thanks for any help,

    Andy Cohen




---------------------------------------------------------------------
To unsubscribe, e-mail: svnkit-users-unsubscribe@...
For additional commands, e-mail: svnkit-users-help@...

 « Return to Thread: Seeking SVNKit speedup via JavaHL -