You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Troy Bull <tr...@gmail.com> on 2008/02/25 18:48:46 UTC

Best way to search across revisions

Greetings

I wanted to create a report for management on our Repository.  I
wanted to search each repository each revision for jar, ear, and war
files.  So, I stared by using

svn ls -r # --verbose file://repo

where # goes from 0 to the svnlook youngest for each repository

This turns out to be VERY VERY slow, some of our repositories it was
taking 90 minutes to complete a single revision.

So, I decided to try something else.

I did the following (in perl)

open FL, "/usr/local/bin/svnadmin dump -r $rev --incremental $r 2>/dev/null |";

where $rev is the revision and $r is the repository, then I filter the
output for "files" and check them.

Then I keep track of count of each type, size of each type, and user
that is committing them into my Repository.  This turned out the be
WAY faster.  and it appears to be working, I am on revision 2800 of
5500 on repository 56 of 209.

Does anyone know of a better way to do this?

Thanks
Troy

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: Best way to search across revisions

Posted by Troy Bull <tr...@gmail.com>.
On Mon, Feb 25, 2008 at 2:23 PM, Reedick, Andrew <jr...@att.com> wrote:
>
> > -----Original Message-----
>  > From: Troy Bull [mailto:troy.bull@gmail.com]
>  > Sent: Monday, February 25, 2008 1:49 PM
>  > To: users@subversion.tigris.org
>  > Subject: Best way to search across revisions
>  >
>  > Greetings
>  >
>  > I wanted to create a report for management on our Repository.  I
>  > wanted to search each repository each revision for jar, ear, and war
>  > files.  So, I stared by using
>  >
>  > svn ls -r # --verbose file://repo
>  >
>  > where # goes from 0 to the svnlook youngest for each repository
>  >
>  > This turns out to be VERY VERY slow, some of our repositories it was
>  > taking 90 minutes to complete a single revision.
>  >
>  > So, I decided to try something else.
>  >
>  > I did the following (in perl)
>  >
>  > open FL, "/usr/local/bin/svnadmin dump -r $rev --incremental $r
>  > 2>/dev/null |";
>  >
>  > where $rev is the revision and $r is the repository, then I filter the
>  > output for "files" and check them.
>  >
>  > Then I keep track of count of each type, size of each type, and user
>  > that is committing them into my Repository.  This turned out the be
>  > WAY faster.  and it appears to be working, I am on revision 2800 of
>  > 5500 on repository 56 of 209.
>  >
>  > Does anyone know of a better way to do this?
>
>
>  Instead of listing the full set of files for each and every revision
>  number (which is multiply redundant,) couldn't you just parse the output
>  of 'svn log -v' or 'svn log -v --xml' for complete list of jar/war/ear
>  files and what revisions they were added/modified in?  (Ignore deletes.)
>  You would need a follow up command to get the file stats for each
>  file/rev pair.
>
>  Next question:  what is the benefit of such a report? And is it worth
>  the time and labor to generate it?
>
>

svn log -v doesnt give me the size of the files in question. so I
would still have to do svn ls on each file to get the size.
processing the dump file with --incremental flag gives me a stream
with all the info and only gives changed files.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

RE: Best way to search across revisions

Posted by "Reedick, Andrew" <jr...@ATT.COM>.
> -----Original Message-----
> From: Troy Bull [mailto:troy.bull@gmail.com]
> Sent: Monday, February 25, 2008 1:49 PM
> To: users@subversion.tigris.org
> Subject: Best way to search across revisions
> 
> Greetings
> 
> I wanted to create a report for management on our Repository.  I
> wanted to search each repository each revision for jar, ear, and war
> files.  So, I stared by using
> 
> svn ls -r # --verbose file://repo
> 
> where # goes from 0 to the svnlook youngest for each repository
> 
> This turns out to be VERY VERY slow, some of our repositories it was
> taking 90 minutes to complete a single revision.
> 
> So, I decided to try something else.
> 
> I did the following (in perl)
> 
> open FL, "/usr/local/bin/svnadmin dump -r $rev --incremental $r
> 2>/dev/null |";
> 
> where $rev is the revision and $r is the repository, then I filter the
> output for "files" and check them.
> 
> Then I keep track of count of each type, size of each type, and user
> that is committing them into my Repository.  This turned out the be
> WAY faster.  and it appears to be working, I am on revision 2800 of
> 5500 on repository 56 of 209.
> 
> Does anyone know of a better way to do this?
 

Instead of listing the full set of files for each and every revision
number (which is multiply redundant,) couldn't you just parse the output
of 'svn log -v' or 'svn log -v --xml' for complete list of jar/war/ear
files and what revisions they were added/modified in?  (Ignore deletes.)
You would need a follow up command to get the file stats for each
file/rev pair.  

Next question:  what is the benefit of such a report? And is it worth
the time and labor to generate it?



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org