Client Version 3.0.7
This is an interesting problem that to my knowledge has only happened once.
My build script needs to get files from two seprate repositories. It will first set a label and then perform a GETLABEL. It will do this twice against each repository. The FileNotFoundException only happend when getting files from the second repository. Here is the message from the client:
<vault>
<!-- Fetched _TRUNK/IAI_US.chm -->
<error>
Could not find file "C:\DOCUME~1\iabuild\LOCALS~1\Temp\vaultTmp\RUNK/IAI_US.chm".
</error>
<exception>
System.IO.FileNotFoundException: Could not find file "C:\DOCUME~1\iabuild\LOCALS~1\Temp\vaultTmp\RUNK/IAI_US.chm".
File name: "C:\DOCUME~1\iabuild\LOCALS~1\Temp\vaultTmp\RUNK/IAI_US.chm"
at System.IO.__Error.WinIOError(Int32 errorCode, String str)
at System.IO.File.InternalCopy(String sourceFileName, String destFileName, Boolean overwrite)
at VaultClientOperationsLib.WorkingFolder.UpdateHiddenFileContentsFromFullFile(VaultClientFile file, String fullFile, Int64 targetVersion, UInt32 targetCRC, Int64 targetSize)
at VaultClientOperationsLib.WorkingFolder.UpdateHiddenFileAndSetBaselineVersion(VaultClientFile file, String fullFile, Int64 targetVersion, Int64 targetDisplayVersion, UInt32 targetCRC, Int64 targetSize)
at VaultClientOperationsLib.ClientInstance.ResolveUnknownFiles(UnknownFile[] unknownFiles)
at VaultClientOperationsLib.ClientInstance.CreateGetFileRequests(VaultClientFile[] files, Boolean forceLatest, Boolean forceDisplayVersion, Boolean dontCheckWorkingFolders, MakeWritableType makeWritable, Boolean isLabelGet, String labelSubItemPath, Boolean isLabelGetForSingleFile, Boolean bIsRetry)
at VaultClientOperationsLib.ClientInstance.CreateGetFileRequests(VaultClientFile[] files, Boolean forceLatest, Boolean forceDisplayVersion, Boolean dontCheckWorkingFolders, MakeWritableType makeWritable, Boolean isLabelGet, String labelSubItemPath, Boolean isLabelGetForSingleFile)
at VaultClientOperationsLib.ClientInstance.GetByLabel_GetData(VaultClientFile[] files, MakeWritableType makeWritable, SetFileTimeType setFileTime, MergeType merge, OverwritePrompt PromptData, Int64 labelID, String currentPathToLabelItem, String labelSubItemPath, Boolean isLabelGetForSingleFile)
at VaultClientOperationsLib.ClientInstance.GetByLabel_GetData(VaultClientFolder folder, Boolean recursive, MakeWritableType makeWritable, SetFileTimeType setFileTime, MergeType merge, OverwritePrompt PromptData, Int64 labelID, String currentPathToLabelItem, String labelSubItemPath)
at VaultCmdLineClient.VaultCmdLineClient.ProcessCommandGetLabel(String reposItem, String label, String labelSubItem)
at VaultCmdLineClient.VaultCmdLineClient.ProcessCommand(Args curArg)
at VaultCmdLineClient.VaultCmdLineClient.Main(String[] args)
</exception>
<result success="no" />
</vault>
The server log does not show any problems occuring in this time period.
When I tried to sync the files though the GUI I noticed that the Working Folder was not set, which is also interesting since the build script was working sometime in the past. When I reset the working folder and cleaned the local directory everything seemed to work fine again.
I would like to know if anyone knows what may of cause this problem to happen.
File Not Found Exception when using GETLABEL
Moderator: SourceGear
Same problem a few builds back, but it shows the same error in a slightly different way. Note that it claims to have fetched IAI_US.chm and a couple other files and then throws the exception on IAI_US.chm:
<vault>
<!-- Fetched _TRUNK/IAI_US.chm -->
<!-- Fetched _TRUNK/APConExp.chm -->
<!-- Fetched _TRUNK/Glossary_IAI.chm -->
<error>
Could not find file "C:\DOCUME~1\iabuild\LOCALS~1\Temp\vaultTmp\RUNK/IAI_US.chm".
</error>
<exception>
System.IO.FileNotFoundException: Could not find file "C:\DOCUME~1\iabuild\LOCALS~1\Temp\vaultTmp\RUNK/IAI_US.chm".
File name: "C:\DOCUME~1\iabuild\LOCALS~1\Temp\vaultTmp\RUNK/IAI_US.chm"
at System.IO.__Error.WinIOError(Int32 errorCode, String str)
at System.IO.File.InternalCopy(String sourceFileName, String destFileName, Boolean overwrite)
at VaultClientOperationsLib.WorkingFolder.UpdateHiddenFileContentsFromFullFile(VaultClientFile file, String fullFile, Int64 targetVersion, UInt32 targetCRC, Int64 targetSize)
at VaultClientOperationsLib.WorkingFolder.UpdateHiddenFileAndSetBaselineVersion(VaultClientFile file, String fullFile, Int64 targetVersion, Int64 targetDisplayVersion, UInt32 targetCRC, Int64 targetSize)
at VaultClientOperationsLib.ClientInstance.ResolveUnknownFiles(UnknownFile[] unknownFiles)
at VaultClientOperationsLib.ClientInstance.CreateGetFileRequests(VaultClientFile[] files, Boolean forceLatest, Boolean forceDisplayVersion, Boolean dontCheckWorkingFolders, MakeWritableType makeWritable, Boolean isLabelGet, String labelSubItemPath, Boolean isLabelGetForSingleFile, Boolean bIsRetry)
at VaultClientOperationsLib.ClientInstance.CreateGetFileRequests(VaultClientFile[] files, Boolean forceLatest, Boolean forceDisplayVersion, Boolean dontCheckWorkingFolders, MakeWritableType makeWritable, Boolean isLabelGet, String labelSubItemPath, Boolean isLabelGetForSingleFile)
at VaultClientOperationsLib.ClientInstance.GetByLabel_GetData(VaultClientFile[] files, MakeWritableType makeWritable, SetFileTimeType setFileTime, MergeType merge, OverwritePrompt PromptData, Int64 labelID, String currentPathToLabelItem, String labelSubItemPath, Boolean isLabelGetForSingleFile)
at VaultClientOperationsLib.ClientInstance.GetByLabel_GetData(VaultClientFolder folder, Boolean recursive, MakeWritableType makeWritable, SetFileTimeType setFileTime, MergeType merge, OverwritePrompt PromptData, Int64 labelID, String currentPathToLabelItem, String labelSubItemPath)
at VaultCmdLineClient.VaultCmdLineClient.ProcessCommandGetLabel(String reposItem, String label, String labelSubItem)
at VaultCmdLineClient.VaultCmdLineClient.ProcessCommand(Args curArg)
at VaultCmdLineClient.VaultCmdLineClient.Main(String[] args)
</exception>
<result success="no" />
</vault>
<vault>
<!-- Fetched _TRUNK/IAI_US.chm -->
<!-- Fetched _TRUNK/APConExp.chm -->
<!-- Fetched _TRUNK/Glossary_IAI.chm -->
<error>
Could not find file "C:\DOCUME~1\iabuild\LOCALS~1\Temp\vaultTmp\RUNK/IAI_US.chm".
</error>
<exception>
System.IO.FileNotFoundException: Could not find file "C:\DOCUME~1\iabuild\LOCALS~1\Temp\vaultTmp\RUNK/IAI_US.chm".
File name: "C:\DOCUME~1\iabuild\LOCALS~1\Temp\vaultTmp\RUNK/IAI_US.chm"
at System.IO.__Error.WinIOError(Int32 errorCode, String str)
at System.IO.File.InternalCopy(String sourceFileName, String destFileName, Boolean overwrite)
at VaultClientOperationsLib.WorkingFolder.UpdateHiddenFileContentsFromFullFile(VaultClientFile file, String fullFile, Int64 targetVersion, UInt32 targetCRC, Int64 targetSize)
at VaultClientOperationsLib.WorkingFolder.UpdateHiddenFileAndSetBaselineVersion(VaultClientFile file, String fullFile, Int64 targetVersion, Int64 targetDisplayVersion, UInt32 targetCRC, Int64 targetSize)
at VaultClientOperationsLib.ClientInstance.ResolveUnknownFiles(UnknownFile[] unknownFiles)
at VaultClientOperationsLib.ClientInstance.CreateGetFileRequests(VaultClientFile[] files, Boolean forceLatest, Boolean forceDisplayVersion, Boolean dontCheckWorkingFolders, MakeWritableType makeWritable, Boolean isLabelGet, String labelSubItemPath, Boolean isLabelGetForSingleFile, Boolean bIsRetry)
at VaultClientOperationsLib.ClientInstance.CreateGetFileRequests(VaultClientFile[] files, Boolean forceLatest, Boolean forceDisplayVersion, Boolean dontCheckWorkingFolders, MakeWritableType makeWritable, Boolean isLabelGet, String labelSubItemPath, Boolean isLabelGetForSingleFile)
at VaultClientOperationsLib.ClientInstance.GetByLabel_GetData(VaultClientFile[] files, MakeWritableType makeWritable, SetFileTimeType setFileTime, MergeType merge, OverwritePrompt PromptData, Int64 labelID, String currentPathToLabelItem, String labelSubItemPath, Boolean isLabelGetForSingleFile)
at VaultClientOperationsLib.ClientInstance.GetByLabel_GetData(VaultClientFolder folder, Boolean recursive, MakeWritableType makeWritable, SetFileTimeType setFileTime, MergeType merge, OverwritePrompt PromptData, Int64 labelID, String currentPathToLabelItem, String labelSubItemPath)
at VaultCmdLineClient.VaultCmdLineClient.ProcessCommandGetLabel(String reposItem, String label, String labelSubItem)
at VaultCmdLineClient.VaultCmdLineClient.ProcessCommand(Args curArg)
at VaultCmdLineClient.VaultCmdLineClient.Main(String[] args)
</exception>
<result success="no" />
</vault>
There may have been an inconsistenty in the client-side cache file in Local Settings\Temp for your build user. Reseting the working directory rebuilt the cache.When I reset the working folder and cleaned the local directory everything seemed to work fine again.
Linda Bauer
SourceGear
Technical Support Manager
SourceGear
Technical Support Manager