Cannot Retrieve or Difference Previous Versions of Files
Moderator: SourceGear
Understood. I'll send any information as I find them. Maybe it will give you more of an idea.
I decided to open up a completely different database (much smaller). It's our Documentation database.
I found a file in $/Departments/IS-Dept/Standard Procedures/
05/11/2001 - A file named "Restoring a Database.doc" was added to VSS using the VSS client.
10/02/03 - It was renamed from "Restoring a Database.doc" to "Restoring an Access database from tape backup.doc" using the VSS client.
I can check out this file through SOS however if I go to history and try to do a get I get stuck with the spinning hourglass. There is only one version of this file. Doing a get says "Version not found" in the log. However it checks out and the VSS client can do a history and get on it just fine.
All the files in which I am finding a problem were either shared at one time or share/branched from a different project, etc.
I decided to open up a completely different database (much smaller). It's our Documentation database.
I found a file in $/Departments/IS-Dept/Standard Procedures/
05/11/2001 - A file named "Restoring a Database.doc" was added to VSS using the VSS client.
10/02/03 - It was renamed from "Restoring a Database.doc" to "Restoring an Access database from tape backup.doc" using the VSS client.
I can check out this file through SOS however if I go to history and try to do a get I get stuck with the spinning hourglass. There is only one version of this file. Doing a get says "Version not found" in the log. However it checks out and the VSS client can do a history and get on it just fine.
All the files in which I am finding a problem were either shared at one time or share/branched from a different project, etc.
Brian C Drab
Cool.BrianDrab wrote:Sure.
You can upload the file to an anonymous ftp.sourcegear.com. Be sure to place the file in the /incoming/ directory, and send an email to our support site letting me know the file name and when you have finished the upload.
I won't get to it until Monday, so don't feel too rushed to send it in.
Jeff Clausius
SourceGear
SourceGear
I decided to go back to original example and investigate further.
I figured I would try using only the VSS command-line and eliminate the GUI.
Check this out. At the command prompt if I attempt to get version 1 of the file which you can clearly see in VSS history through the GUI, the file is not retrievable. I'm told that it can't find the file. I used the following:
ss get "$/Visual Basic .NET 2005/Reporting Services Solution/Safety Reports/Horizon Current Violations All Terminals.rdl" -V1
HOWEVER if I use the date of the version 1 file it IS retrievable. I wonder if VSS is using some hierarchy where if it can't get it by version then it uses date and then label, etc? Following is what I used to specify the date of the file and you can see that it successfully got the file.
ss get "$/Visual Basic .NET 2005/Reporting Services Solution/Safety Reports/Horizon Current Violations All Terminals.rdl" -Vd8-18-06
Replacing local copy of $/Visual Basic .NET 2005/Reporting Services Solution/Safety Reports/Horizon Current Violations All Terminals.rdl
I thought I would pass that along.
I figured I would try using only the VSS command-line and eliminate the GUI.
Check this out. At the command prompt if I attempt to get version 1 of the file which you can clearly see in VSS history through the GUI, the file is not retrievable. I'm told that it can't find the file. I used the following:
ss get "$/Visual Basic .NET 2005/Reporting Services Solution/Safety Reports/Horizon Current Violations All Terminals.rdl" -V1
HOWEVER if I use the date of the version 1 file it IS retrievable. I wonder if VSS is using some hierarchy where if it can't get it by version then it uses date and then label, etc? Following is what I used to specify the date of the file and you can see that it successfully got the file.
ss get "$/Visual Basic .NET 2005/Reporting Services Solution/Safety Reports/Horizon Current Violations All Terminals.rdl" -Vd8-18-06
Replacing local copy of $/Visual Basic .NET 2005/Reporting Services Solution/Safety Reports/Horizon Current Violations All Terminals.rdl
I thought I would pass that along.
Brian C Drab
More findings. To comment more on your question regarding if the original file we were working on was also renamed. I've confirmed that it wasn't HOWEVER the folder that contains it WAS. I actually found two other folders that were renamed to be proper case as you can see below and I have the same exact problems in these folders. The ones that were NOT renamed I have to problem with.
Renamed imaging reports to Imaging Reports
Renamed safety reports to Safety Reports
Renamed operations reports to Operations Reports
Renamed imaging reports to Imaging Reports
Renamed safety reports to Safety Reports
Renamed operations reports to Operations Reports
Brian C Drab
Brian:
Have you upgraded to Visual SourceSafe 2005 (along with the VSS 2005 update)? If not, can you do this on the SourceOffSite server? There have been a number of patches applied to the VSS Automation Library within this last update that correct some of the "apparent" misbehavior of SourceOffSite caused by this library.
FWIW, I took the database you provided, and did the GETs from history. They were all failing with "Exception getting file. Version not found." I next uninstalled VSS 6.0d on my SourceOffSite server, installed VSS 2005 (english) as well as the VSS 2005 update file. After installation, the GET from history for any version of those folders worked correctly.
Let me know if you can give this a try as well.
Have you upgraded to Visual SourceSafe 2005 (along with the VSS 2005 update)? If not, can you do this on the SourceOffSite server? There have been a number of patches applied to the VSS Automation Library within this last update that correct some of the "apparent" misbehavior of SourceOffSite caused by this library.
FWIW, I took the database you provided, and did the GETs from history. They were all failing with "Exception getting file. Version not found." I next uninstalled VSS 6.0d on my SourceOffSite server, installed VSS 2005 (english) as well as the VSS 2005 update file. After installation, the GET from history for any version of those folders worked correctly.
Let me know if you can give this a try as well.
Jeff Clausius
SourceGear
SourceGear
I was hoping not have to purchase another license (to install VSS 2005 on the server). That's why I stuck with the version 6.0.
I will however do this to see if this resolves the issue. I assume I simply uninstall the old one and then install VSS 2005 on the server and then try it??
Thank you.
I will however do this to see if this resolves the issue. I assume I simply uninstall the old one and then install VSS 2005 on the server and then try it??
Thank you.
Brian C Drab
Yes. There were some fixes made in VSS 2005 Update to address some VSS database component issues a customer of ours uncovered about six months ago.BrianDrab wrote:I will however do this to see if this resolves the issue. I assume I simply uninstall the old one and then install VSS 2005 on the server and then try it??
Will this solve the problem your encountering? All I can say for certain is with VSS 6.0d and your test database, I was encountering the invalid version problem, and with VSS 2005 w/ VSS 2005 Update the issue disappeared and SOS worked correctly.
In regards to the licensing, from what I understand, Microsoft requires each SourceOffSite user to be a licensed VSS user. So if you already have VSS 2005 licenses for those users, I don't think there is a problem.[/quoteBrianDrab wrote:I was hoping not have to purchase another license (to install VSS 2005 on the server). That's why I stuck with the version 6.0.
Jeff Clausius
SourceGear
SourceGear