Get Latest Error

If you are having a problem using Vault, post a message here.

Moderator: SourceGear

Post Reply
scaiferw
Posts: 83
Joined: Thu Mar 22, 2012 8:22 am

Get Latest Error

Post by scaiferw » Fri Oct 05, 2012 11:40 am

One of my users is having trouble with a Get Latest operation.

"Get Latest Version failed for some files. See the Messages Window for details."

In the messages tab we see;

Code: Select all

[size=85]at System.IO.File.InternalCopy(String sourceFileName, String destFileName, Boolean overwrite)

at VaultLib.Misc.FileCopy(String source, String dest, Boolean overwrite)

at VaultClientOperationsLib.WorkingFolder.UpdateWorkingFile(VaultClientFile file, Int64 targetVersion, Int64 displayVersion, MergeType merge, VaultDateTime dt, Boolean makeBackups, OverwritePrompt PromptData)

at VaultClientOperationsLib.WorkingFolder.UpdateWorkingFile(VaultClientFile file, Int64 targetVersion, Int64 displayVersion, MergeType merge, VaultDateTime dt, OverwritePrompt PromptData)

at VaultClientOperationsLib.UpdateThread.ProcessCommand(UpdateThreadCommand command, UpdateThreadCommandResult& outputResult)[/size]
I got a message "The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters." when I tried to get latest on the same material, the longest path in the folder tree seems to be 222 characters including the '$' symbol.

Do you have any idea what would cause that?

I suspect that it is a path length issue even though it's not 248 characters because it seems to be failing at the deepest file in the folder structure being checked out. Of course that begs the question of how it got in there.
Vault Standard Version 5.1.1.19215 -- Windows Server 2008 R2 -- SQL Server 2008 R2

lbauer
Posts: 9736
Joined: Tue Dec 16, 2003 1:25 pm
Location: SourceGear

Re: Get Latest Error

Post by lbauer » Fri Oct 05, 2012 3:45 pm

The .NET Framework has a limit of 260 characters, and Vault is a .NET app. We're not sure exactly what .NET includes in this path. It could be the path length in the repository, or the combined repository path and client-side cache path on disk.
Linda Bauer
SourceGear
Technical Support Manager

Tim Evans
Posts: 3
Joined: Wed Feb 19, 2014 5:06 am

Re: Get Latest Error

Post by Tim Evans » Wed Feb 19, 2014 5:25 am

We are current running version 5, and have just hit this issue. Has anthing been done about this in a leter version of Vault?

lbauer
Posts: 9736
Joined: Tue Dec 16, 2003 1:25 pm
Location: SourceGear

Re: Get Latest Error

Post by lbauer » Wed Feb 19, 2014 4:21 pm

We haven't made any changes to this, and most likely won't in the future. It would basically mean a re-write of Vault.

Try keeping your paths under the limit.
Linda Bauer
SourceGear
Technical Support Manager

Tim Evans
Posts: 3
Joined: Wed Feb 19, 2014 5:06 am

Re: Get Latest Error

Post by Tim Evans » Thu Feb 20, 2014 3:20 am

The problem, we have with that, is we are including a third party library, which has the long paths, so we cant realy change them. Given we were able to add the files to vault in the first place, it would be good if the system was consistent, if I can't do a get latest on the files, why can I add them to vault :)

lbauer
Posts: 9736
Joined: Tue Dec 16, 2003 1:25 pm
Location: SourceGear

Re: Get Latest Error

Post by lbauer » Thu Feb 20, 2014 11:03 am

Adding files to Vault puts them in the database.

Getting the files from the Vault Client puts them on disk, which involves a working folder path, cache folder path, etc.

We can't anticipate what the disk path lengths will be when you add files to Vault.

You could try storing the cache in the working folder or a folder directly on the C:\ drive. This setting is in the Vault Client under Tools->Options->Local Files. The path to the client cache can be lengthy because by default, it's in App Data folder of the Windows user logged into the client machine.
Linda Bauer
SourceGear
Technical Support Manager

Tim Evans
Posts: 3
Joined: Wed Feb 19, 2014 5:06 am

Re: Get Latest Error

Post by Tim Evans » Fri Feb 21, 2014 3:08 am

Tried setting the cache folder, and that let me get more files out, but still not all of them, thanks.

I understand that adding files involves putting them in the database, but you must be reading them from the file system, to be able to save them to the database, so it makes little sense to me that you can read them with the long path, but not save them with the long path.

lbauer
Posts: 9736
Joined: Tue Dec 16, 2003 1:25 pm
Location: SourceGear

Re: Get Latest Error

Post by lbauer » Fri Feb 21, 2014 10:52 am

Files can be added from anywhere on disk. So a user can add from C:\Folder, but another user might try to retrieve to a working folder at C:\myfolder\subfolderfolderfolderfolder\subsubsubsubfolderfolderfolder\etc.

Plus the cache\baseline file is not created until a user does a Get to the working folder. The path to the baseline is part of the path length.
Linda Bauer
SourceGear
Technical Support Manager

Post Reply