Shared file and SOSCMD

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

Moderator: SourceGear

Post Reply
rpranesh
Posts: 6
Joined: Thu Feb 16, 2006 6:47 pm

Shared file and SOSCMD

Post by rpranesh » Thu Feb 16, 2006 6:53 pm

Hi,
I have a project A and after some time Project B was created and it is shared with Project A. Any changes to Project A is seen in Project B through VSS/SOS GUI. However if SOSCMD GetProject is performed on Project B any check-ins made in Project A after SHared Project B got created in not retrieved correctly. It is only getting the version of files at the time of split.
SOS GUI is working correctly, but not SOSCMD, i tried SOSCMD 3.5.3 and 4.1.2 and both exhibit same behaviour.

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

Post by lbauer » Thu Feb 16, 2006 7:53 pm

We'll try to reproduce this.

What is the version of the SOS Server?

What version of VSS automation component is on the SOS Server machine? Here's how to find out:
http://support.sourcegear.com/viewtopic.php?t=1510

You shared Project A to create Project B, is that correct?
Are they at the same level in the project tree:

$/ProjectA
$/ProjectB

Thanks.
Linda Bauer
SourceGear
Technical Support Manager

rpranesh
Posts: 6
Joined: Thu Feb 16, 2006 6:47 pm

Post by rpranesh » Thu Feb 16, 2006 10:07 pm

Linda:
Thanks for the quick reply. SOS & VSS Server are maintained by my companies centralized MIS. I will get the details about the version of SOS tommorrow.

Yes, I shared Project A to create Project B. They are in the same level.

After sharing (all files were NOT branched at the time of sharing), some shared files were changed in Project A assuming that it would be visible in Project B.

Using VSS Client/SOS GUI client, the behaviour is correct as described and shared file changes in Project A were visible in Project B.

However if we use SOSCMD GetProject to get Project B , the shared files which had undergone changes in Project A after Project B were created, were not corectly.

This has broken our project automated build environment and need a quick help to fix this.


I think i used VSS to create the initial share and

rpranesh
Posts: 6
Joined: Thu Feb 16, 2006 6:47 pm

Post by rpranesh » Thu Feb 16, 2006 10:29 pm

Linda:
I conducted one more experiment. I tried to see whether soscmd GetFile behaves differently from GetProject. I took a sample file that was not retrieved correctly using GetProject and i tried to do a soscmd GetFile on that shared file. As a surprise there is a difference. soscmd GetFile got the correct version, whereas GetProject got the wrong one for the same file.

Hope this helps.

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

Post by lbauer » Fri Feb 17, 2006 8:37 am

Thanks for the additional information. To reproduce this we will need to know your SOS Server version and especially the version of the SourceSafe automation component, as this can greatly affect the behavior of SOS.
Linda Bauer
SourceGear
Technical Support Manager

rpranesh
Posts: 6
Joined: Thu Feb 16, 2006 6:47 pm

Post by rpranesh » Fri Feb 17, 2006 9:37 am

We are using server version 3.5.3

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

Post by lbauer » Fri Feb 17, 2006 5:56 pm

I think I reproduced this once, but couldn't consistently reproduce the behavior. Are you using the same working directory as the SOS GUI Client? Have you tried using the -nocache or -soshome parameters? (See soscmd.txt for the Command Line Client documentation.) Can you get the proper files to a non-working directory?

Also, I may be using a different version of the VSS automation component. What version of VSS automation component is on your SOS Server machine? Here's how to find out:
http://support.sourcegear.com/viewtopic.php?t=1510

Put your SOS Server log in verbose mode. This setting is in the SOS Server Manager->Debug tab. Are there any errors indicating SOS is having problem getting files?

Also, what command are you using for this operation (please use XXX's for any actual server, port, user and password info.
Linda Bauer
SourceGear
Technical Support Manager

rpranesh
Posts: 6
Joined: Thu Feb 16, 2006 6:47 pm

Post by rpranesh » Sat Feb 18, 2006 12:05 pm

My build envionment is linux and soscmd is used in that build environment. My build folder is samba shared and this share is mapped in windows. In Windows i use SOS GUI and VSS client on the mapped drive (i.e.) i do not use SOS GUI from Linux.

I have not used -nocache or -soshome. I will work with my MIS team to setup verbose mode. From the soscmd client, there are no errors and success is correctly reported (but old version is reported). As previously stated,soscmd GetFile is working good, not the GetProject.

Also when i used -nocache it was returning the wrong version of the file. I am not sure whether soshome applied in this case, as i am not using SOS GUI in Linux. Also i tried soscmd without specfying the workdir and it also returned the wrong version.

The syntax i use is
soscmd -command GetProject -server $ServerIp:$ServerPort -name $SosUser -password $SosPass -database $Database -project $ProjPath/$DevTree -recursive -workdir $BuildDir/$DevTree

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

Post by lbauer » Sat Feb 18, 2006 9:56 pm

We need to know the version of the SourceSafe automation component you're using on the SOS Server before we can provide further assistance. The automation component is the interface between SOS and the database, so variations in the automation component can cause different behavior. Here's how to find out what version of the automation component you're using.

http://support.sourcegear.com/viewtopic.php?t=1510
Linda Bauer
SourceGear
Technical Support Manager

rpranesh
Posts: 6
Joined: Thu Feb 16, 2006 6:47 pm

Post by rpranesh » Tue Feb 21, 2006 5:00 pm

The version is 6.0.98.48

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

Post by lbauer » Thu Feb 23, 2006 11:00 am

We have not been able to reproduce this in-house, either with the Windows or Linux CLC, using 3.5.3 SOS server and command line client.

Does this happen just on the one shared project? Is it reproducible if you create a project, share it, edit some files, then do a get on the shared project?

If so, perhaps my steps to reproduce were slightly different than yours. Could you provide specific steps?

If the problem is only with the one shared project, then there may be inconsistencies in the VSS database. In that case, I would suggest running Analyze on the VSS database:

http://support.sourcegear.com/viewtopic.php?t=50
Linda Bauer
SourceGear
Technical Support Manager

Post Reply