[revml] VSS->RevML: couldn't parse source_rev_id
Alexandros Karypidis
karypid@inf.uth.gr
Tue, 18 May 2004 14:19:10 +0300
Hi all,
I'm trying to export a VSS repository into RevML. VCP finishes scanning
the VSS files (there's 4065!) and starts writing the RevML. Immediately,
it fails miserably with:
------------
vcp: scanning VSS for files '...': - 7047
vcp: found 4065 files
vcp: scanning VSS files: [##########] 4065/4065
vcp: found 12340 revisions
vcp: writing revisions: [\ ] 1/12340
vcp: couldn't parse source_rev_id '0.' from path/to/SomeFile.java#0.
@<undef> </path/to/> (text) BASE REV at /loader/0xd2726c/VCP/Source/vss.pm
line 395.
while writing path/to/SomeFile.java#0. @<undef> </path/to/> (text) BASE
REV at /loader/0xd2726c/VCP/Dest/revml.pm line 324.
------------
So now, I'm looking into the vss.pm and revml.pm files to see what's
happening (unfortunately I'm Perl iliterate but I had to give it a try).
I can see that this message is output from vss.pm so the problem is on
that side. Specifically, the line reads:
my ( $generation, $vss_rev_id ) = $vcp_rev_id =~ /\A(\d+)\.(\d+)\z/
or die "vcp: couldn't parse source_rev_id '$vcp_rev_id' from ",
$r->as_string;
and just above it, the value of vcp_rev_id was set to:
my $vcp_rev_id = $r->source_rev_id;
So, I guess it has something to do with an invalid r->source_rev_id
value being set while the VSS driver scans the revisions? Any pointers
on what I should do / where I should look?
Regards,
Alex
PS: using "vcp v0.9, change number 4232 (2004/03/18)"