Slow commits when there are many tags in the repository
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar Subversion Plugin |
Triaged
|
Low
|
Unassigned |
Bug Description
I have been discussing this with Jelmer over mail, I'm just creating a bug so this will not be forgotten and overlooked.
> I saw you had made some caching fix in bzr-svn to make commits faster. I
> > was happy to see this since I try to get bzr in to my company that
> > currently works with svn. However, the repository has about 45000
> > revisions, 500000 lines of code and about 4500 files and on this
> > repository commit is still really slow (well I canceled after a while
> > and used svn since it just took to long). Is it a known issue that it is
> > very slow in these kind of repositories or could I help you with some
> > debuging/profiling?
> How exactly are you using bzr-svn? Are you running "bzr commit" in a
> Subversion checkout (-d .svn) or in a Bazaar checkout (-d .bzr)?
>
> In the first case, bzr-svn will have to do some analysis of the
> repository that can be cached, so it will be a one-time thing. This
> shouldn't take very long but it may suffer from the same problems as
> cloning the repository. It would be interesting to know which part of
> this process is taking very long in your case.
>
> The best way to do debugging is to run bzr with the arguments
> -Dtransport -Dfetch, which will cause bzr-svn to write debug output to
> ~/.bzr.log.
>
I'll attach the log... it is not of a full commit since I didn't wait for it to complete. The first was aborted quite fast, for the second one I waited one minute after I had written the commit message.
I see that it is in the last line before I abort is
25.522 svn ls -r 1 ''tags''
and if I do:
svn ls svn://oof/
3500
yes I know it is kind of weird to have 3500 tags in a repository... but the way we do it we will have multiple tags per snapshot of our product and we do snapshot of every minor delivery to be able to track things...
Can't this be avoided in any way? I commit to trunk why is tags and branches checked?
status triaged samba.org/ ~jelmer/
importance low
--
Jelmer Vernooij <email address hidden> - http://
Jabber: <email address hidden>