2 messages in com.perforce.revml[revml] VSS->RevML: couldn't parse so...
FromSent OnAttachments
Alexandros Karypidis18 May 2004 04:18 
Barrie Slaymaker20 May 2004 18:25 
Subject:[revml] VSS->RevML: couldn't parse source_rev_id
From:Barrie Slaymaker (barr@slaysys.com)
Date:05/20/2004 06:25:16 PM
List:com.perforce.revml

On Tue, May 18, 2004 at 02:19:10PM +0300, Alexandros Karypidis wrote:

Hi all,

I'm trying to export a VSS repository into RevML.

RevML? What for?

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).

We'll convert you to the dark side :).

Some background: VSS allows you to delete a file exactly once, then add a new file with the same name in its place. In order to model this, VCP::Source::vss adds a "0." prefix to the VSS rev ids of deleted files and a "1." prefix to the VSS rev ids of not-deleted files.

It looks like VCP is prepending a "0." to an empty revid string, most likely the first revision of SomeFile.java.

You might try to narrow down the problem by:

1. Examining the VSS file history for that file for odd looking output, like revisions with no number. I'm guessing that the VSS file history is emitting revisions that VCP doesn't know how to parse and VCP is not noticing until it tries to use the poorly parsed metadata. If you can share the log with us, I can take a swipe at trying to reproduce it here and fixing it.

2. limiting VCP to transferring just that file (for speed's sake),

3. Verifying that the problem reproduces with that limitation,

4. turning on logging by using the -d command line switch or setting the environment variable VCPDEBUG=1

5. looking through the log to see what version it's really trying to get.

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?

PS: using "vcp v0.9, change number 4232 (2004/03/18)"

Good, I think that's current.

- Barrie