[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: cvs2svn.py creating empty txn's

From: Max Bowsher <maxb_at_ukf.net>
Date: 2003-09-11 11:00:27 CEST

Blair Zajac wrote:
> Hello,
>
> We've got a CVS repository that generates this empty txn:
>
> Revision-number: 13
> Prop-content-length: 164
> Content-length: 164
>
> K 7
> svn:log
> V 62
> This commit was manufactured by cvs2svn to create branch 'AM'.
> K 10
> svn:author
> V 7
> unknown
> K 8
> svn:date
> V 27
> 2003-09-10T20:10:57.000000Z
> PROPS-END
>
> Revision-number: 14
> Prop-content-length: 163
> Content-length: 163
>
> I caught this because mailer.py HEAD was generating this error:
>
> % /tmp/mailer.py repos2 13 /tmp/mailer.conf.test
> Traceback (most recent call last):
> File "/tmp/mailer.py", line 804, in ?
> svn.util.run_app(main, config_fname, repos_dir, revision)
> File
>
"/opt/i386-linux/installed/subversion-0.29.0/lib/svn-python/svn/core.py",
> line 33, in run_app File "/tmp/mailer.py", line 58, in main
> output = determine_output(cfg, repos, changelist)
> File "/tmp/mailer.py", line 70, in determine_output
> return cls(cfg, repos, changelist)
> File "/tmp/mailer.py", line 242, in __init__
> MailedOutput.__init__(self, cfg, repos, changelist)
> File "/tmp/mailer.py", line 98, in __init__
> common = string.split(dirlist.pop(), '/')
> IndexError: pop from empty list
>
> The svnload load input shows this:
>
> ------- Committed revision 12 >>>
>
> <<< Started new txn, based on original revision 13
>
> ------- Committed revision 13 >>>
>
> and looking at cvs2svn.py output:
>
> new revision: 12
> Finishing branches:
> finishing 'AM_1' as branch
> finishing 'AM' as branch
> Finishing tags:
> finishing 'AM_1' as tag
> finishing 'AM' as tag
> 12 commits processed.
> ----- pass 5 -----
> pass 1: 0 seconds
> pass 2: 0 seconds
> pass 3: 0 seconds
> pass 4: 0 seconds
> pass 5: 0 seconds
> total: 0 seconds
>
> I could potentially supply a portion of the repository that generates
> this problem, but it would take a little work. Let me know.
>
> In the mean time, does anybody think there's an easy bug to fix?
> There may be a simple test that could be added to cvs2svn.py to
> not make a tag or branch unless there's something actually being
> tagged or branched.

Actually, it already does something like this.
I have a vague feeling that this might disappear when I solve issue 1515
"complex branches not reproduced correctly.".
Could you apply the following patch:
Index: cvs2svn.py
===================================================================
--- cvs2svn.py (revision 7032)
+++ cvs2svn.py (working copy)
@@ -975,6 +975,8 @@
                                            self.add_dir,
                                            svn_src_path, svn_src_rev,
                                            entries)
+ print "COPY PATH: %s %s <- %d %s" \
+ % (change.op, svn_dst_path, svn_src_rev, svn_src_path)
     if change.op == 'A':
       # We don't need to include "Node-kind:" for copies; the loader
       # ignores it anyway and just uses the source kind instead.

and let me have the complete output of cvs2svn during pass 4?

Max.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Sep 11 11:01:22 2003

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.