Skip to content
irontoby edited this page Feb 17, 2015 · 2 revisions

NOTE: This wiki page was converted from the [Google Code Repo Wiki] (https://code.google.com/p/vss2svn/wiki/Welcome). Some formatting may not have survived, and some links may be broken. See the README page for more info.

[# Error messages and how to deal with them

This is not necessarily a complete list of errors. If you encounter a new error and figure out a workaround or a fix, please note it here. If the error occurs when loading the dumpfile see also FixingTheDumpfile


Parameter errors

These errors are caused by specifying something wrong in a parameter

FATAL ERROR: Unknown task'' 'foo' ''

Context:: Start of execution with options --resume --task=''foo'' Solution:: Task must be one of INIT, LOADVSSNAMES, FINDDBFILES, GETPHYSHIST, MERGEPARENTDATA, MERGEMOVEDATA, REMOVETMPCHECKIN, MERGEUNPINPIN, BUILDCOMMENTS, BUILDACTIONHIST or IMPORTSVN. Fix your spelling or do not resume.

WARNING: --resume set but no database exists; starting new conversion...

Context:: Start of execution with --resume --task=''foo'' Solution:: Make sure you're resuming in the same path where you started, or have adjusted your options correctly to find the migration you are resuming.


Path and file errors

These errors are a result of something in the filesystem. You may be specifying a file that doesn't exist and should, something that exists but shouldn't, or you may be trying to read or write a file where you do not have permission.

Could not create dumpfile'' 'foo' ''

Solution:: Verify you have write permissions in the current directory. If you are specifying the dumpfile as a parameter, make sure the path exists and you have permission to create a file. If the file exists, make sure you have permission to overwrite it.

The conversion needs at least ssphys version 0.22

Solution:: Make sure the specified version of ssphys is available in the current directory or on the path, and you have permissions to execute it. If you have provided a path for ssphys, make sure the path is correct. Check for an older version of ssphys which appear earlier in the path.

Could not delete existing database ''foo''

Solution:: Check file permissions on the named file. Make sure no other process has the file open. Workaround:: Delete the file before starting the process.

''foo'' does not appear to be a valid VSS database

Solution:: Make sure the --vssdir param is pointing at the directory where srcsafe.ini is located. In a standard configuration, this directory will have subdirectories called data, loggedin, users, temp. vss2svn checks for the existence of a /data/ subdirectory. If your configuration is different, you may need to reconfigure your VSS repository or modify vss2svn.pl (near line 1653) to recognize your alternate setup.

auto_props file'' 'foo' '' is not readable

Context:: Start of execution with option --auto_props=''foo'' Solution:: Make sure ''foo'' exists at the path you specified and you have permissions to read it.

label_mapper file'' 'foo' '' is not readable

Context:: Start of execution with option --label_mapper=''foo'' Solution:: Make sure ''foo'' exists at the path you specified and you have permissions to read it.


Runtime errors in vss2svn

These appear to be internal errors. If you encounter any, they are likely bugs in vss2svn.

Could not create cache'' 'foo' ''

Context:: Throughout. ''foo'' may be NameLookup, Physical, PhysicalAction, VssAction, SvnRevisionVssAction, Label, and possibly others Solution:: Unknown. Insufficient memory?

Could not create SVN revision handler

Solution:: Unknown. Insufficient memory?

Couldn't connect database ''foo'': ...

Solution:: Unknown. The SQLite database used for migration could not be created, or after creation, vss2svn was unable to connect.

FAILED to execute: ''foo''

Solution:: Determine why ''foo'' command could not be executed. Make sure the file exists and you have permission to execute it.

FAILED with non-zero exit status ''n'' (cmd: ''foo'')

Solution:: Determine why ''foo'' command returned an error result.


Errors caused by problems in VSS data

Best practice for a vss2svn migration is to operate on a copy of your VSS database, not the original. This gives you the option of performing the migration multiple times and trying different combinations. It's best to make as few changes as possible to your VSS database to avoid piling new problems on old. Any correction of VSS data depends on the ability to start over from the very beginning.

Can't retrieve info from physical file '' 'foo' ''; it was either destroyed or corrupted

Probable cause:: A file in VSS is the descendant of another file which does not exist in the VSS repository. The older file does not exist, either because of corruption (deleted by Analyze), or by a user (answering yes to "Destroy permanently?", or purging deleted files). Suggestions::

  • If you are performing the migration against a copy of your VSS database (as recommended), and the file was purged/destroyed in an effort to make the migration cleaner, consider leaving the file in place and deleting it after the migration.
  • If the file was removed by Analyze & Repair, there's a slim chance you could put the file back where it belongs and recover the data on a retest, assuming you still have the backup from the Repair.
  • If the file is essential, you may be able to restore a backup (either VSS backup or filesystem backup) and bring back the file for the migration.

Can't retrieve revisions from physical file '' 'foo' ''; it was either destroyed or corrupted

Probable cause::

  • Internal corruption in the VSS repository
  • File was purged, or deleted using Destroy Permanently option Suggestions: Same as "Can't retrieve info from physical file..." above.

Can't handle file '' 'foo' ''; not a project or file

Probable cause:: Internal corruption in the VSS repository. vss2svn could not get enough information about the item, or the information was not recognized. Suggestions::

  • Run a verbose analyze on your VSS repository before making the migration.
  • Make sure your copy of the VSS repository was clean and complete.
  • Make sure all users are out of the database while making your copy.
  • VSS backup and restore can introduce new problems. Use a straight file copy of your repository if at all possible.

'' 'foo' '': Unknown action '' 'bar' ''

Probable cause::

  • The Action attribute for this item is damaged in the VSS repository.
  • A newer version of VSS defines Action values not recognized by your version of vss2svn. Suggestions::
  • If the ''bar'' action is valid, check for a newer version of vss2svn which understands this action, including nightly builds. If not, join the [email protected] vss2svn-users mailing list and email the error you received.
  • Run Analyze & Repair on your database before your next migration.
  • If you can live without the file, consider purging it from your VSS copy before the next migration.

'' 'foo' '': wrong timestamp at version '' 'bar' ''; setting timestamp to '' 'baz' ''

Probable cause::

  • The timestamp is corrupt in the VSS repository.
  • The system clock of user who checked the file in to VSS was set incorrectly Suggestions:: Accept vss2svn's suggested timestamp.

Multiple child recs for parent rec '' 'foo' ''

Probable cause:: Unknown Suggestions:: Unknown

Multiple child recs for parent MOVE rec '' 'foo' ''

Probable cause:: Unknown Suggestions:: Unknown. vss2svn will try to pick one of the files with the correct timestamp.

Inconsistent item type for '' 'foo' ''; '' 'bar' '' unexpected

Probable cause:: Unknown Suggestions:: Unknown. vss2svn will bypass this item and continue.

'' 'foo' '': no version specified for retrieval

Probable cause:: A version is required for actions other than ADD and COMMIT. The VSS repository does not have a version recorded for this item. Suggestions:: Unknown. vss2svn will try to recover by looking for version 1.


Bugs

Use of uninitialized value in concatenation (.) or string at vss2svn.pl line 1289.

Context:: Very early in output when running with --md5 option not specified. The migration continues. Solution:: Use the 20071128 nightly build or later. May not exist in some older builds as well. Workaround:: Specify --md5 option even if you don't need it.

Undefined subroutine &Text::Glob::glob_to_regex_string at Dumpfile/AutoProps.pm line 30.

Context:: Before or during IMPORTSVN task when --auto_props option is used. The migration aborts. Solution:: Use the latest nightly build with Text:Glob 0.08. Should be fixed since r335 Workaround:: Do not use --auto_props option

Clone this wiki locally