Command Line client from *NIX won't commit files

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

Moderator: SourceGear

Post Reply
TheJet

Command Line client from *NIX won't commit files

Post by TheJet » Mon Jul 12, 2004 9:21 am

Hi,
I'm working on testing the command line client under Linux [Fedora Core 2] to allow us to use Vault on a number of our *NIX projects. I'm utilizing Mono 1.0 as the runtime environment [ICU is installed]. I am able to get the client to properly retrieve files and folder information from the Vault, but I am unable to get it to commit files which were modified on the Linux machine, I've tried both COMMITing a specific file and also just COMMITing the entire changeset [which contains only that file]. Here is the result I am receiving:

Code: Select all

[ben@localhost to]$ mono /path/to/vault.exe COMMIT -comment 'Changes from *NIX' -repository repName -user vaultUser -password vaultPass -host vaultHost
<vault>
<changeset>
 <ModifyFile id="0" repospath="$/path/to/Web.config" localpath="/path/to/Web.config" />
</changeset>
<!--  Preparing data to begin transaction  -->
<!--  Beginning transaction  -->
<!--      Check in $/path/to/Web.config  -->
<!--  Ending the transaction  -->
<!--  Server unavailable for transaction end  -->
<!--  Transaction failed  -->
<!--  Item $/path/to/Web.config caused the transaction to fail: Could not apply the delta.  -->
<!--  Transaction failed  -->
<result success="no" />
</vault>
Any ideas? I can commit successfully from Windows using the Vault client [haven't tried command line yet from windows]. The server and client are both running 2.0.3.

Thanks!
Ben
[/code]

sterwill
Posts: 256
Joined: Thu Nov 06, 2003 10:01 am
Location: SourceGear

Post by sterwill » Mon Jul 12, 2004 9:40 am

Does your server log mention anything about this transaction (FailDeltaApply or similar error)?

We recently discovered a bug affecting all Vault clients that use EOL translation. Have you set this file to use non-default EOL translation (this is normally done through the Vault Windows Forms client)?
Shaw Terwilliger
SourceGear LLC
`echo sterwill5sourcegear6com | tr 56 @.`

TheJet

Post by TheJet » Mon Jul 12, 2004 10:11 am

Here are the messages from the server:

Code: Select all

----7/12/2004 10:27:36 AM    USERNAME--192.168.x.x(192.168.x.x)--SSL Disabled
	Login
----7/12/2004 10:27:39 AM    USERNAME--192.168.x.x(192.168.x.x)--SSL Disabled
	VaultServiceBase.VaultResponseCheckIn returned: FailDeltaApply
----7/12/2004 10:27:39 AM    USERNAME--192.168.x.x(192.168.x.x)--SSL Disabled
	EndTxFailDeltaApply
----7/12/2004 10:27:39 AM    USERNAME--192.168.x.x(192.168.x.x)--SSL Disabled
	Logout
The repository I am working with uses "Native" translation [found via admin tool].

Thanks!
Ben

TheJet

Post by TheJet » Mon Jul 12, 2004 10:14 am

Just as a followup, I tried changing the repository settings to use "None" for EOL translation, but the error remains the same.

Thanks!
Ben

sterwill
Posts: 256
Joined: Thu Nov 06, 2003 10:01 am
Location: SourceGear

Post by sterwill » Tue Jul 13, 2004 8:21 am

Just to make sure, you're using Linux on a little-endian machine (Intel architecture), right? We have problems with big-endian architectures on mono (to be fixed in a future release), but those problems usually prevent people from even getting the latest version of files.

Is your Linux box configured to use a web proxy to access your Vault server? These can mangle uploads.

Most likely, the baseline for your working folder file has become corrupt. The best solution is to copy your changed file to a temp directory, then remove your working folder. If you have your Vault user option (you can see it in the Windows Forms client's Options dialog) "Store working folder data inside working folders" set to ON, the hidden data will have been removed when you removed your working folders (and you only need to "rm -r" the single folder containing your problem file). If the option is set to OFF, you'll need to go to ~/.config/SourceGear/Vault_1/Client/[GUID]/[username] and remove the "_sgvault" folder there. This will make every working folder forget all baselines and version info. On Unix it's definitely best to enable the "store working folder data inside working folders" option.
Shaw Terwilliger
SourceGear LLC
`echo sterwill5sourcegear6com | tr 56 @.`

TheJet
Posts: 4
Joined: Mon Jul 12, 2004 10:15 am

Post by TheJet » Tue Jul 13, 2004 10:02 am

Yes, it's running on an x86 machine with Fedora Core 2 and mono 1.0.

No, there is no web proxy involved, it's a direct connection over the LAN.

As a followup, I have tried removing everything [~/.config, and the working directory], and then did the following:

SETWORKINGFOLDER
GET
CHECKOUT
<edit file>
COMMIT

and the error is exactly the same. On the Linux box, the file came over as a DOS file and was edited as such. Previously, the EOL translation was kicking in and I was editing as a *NIX file and committing as such. In both cases, the error occurs. I increased the logging level and got the following messages [which are not really much different from the previous ones]:

Code: Select all

----7/13/2004 11:12:29 AM    sgvaultsystem--()--
	System Started
	Version 2.0.3.2174
	Cache Level = 1
	DataBase Buffer Size = 256
	LogFile Path = C:\WINNT\Temp\sgvault
	Log Level = Debug
	Archive Log = Weekly
	ReverseDNS Lookup = True
	Maximum HTTP Request Length = 102400
	Overwrite Log on Startup = False
	Session Timeout = 4320
	SGVault Working Directory = C:\WINNT\Temp
----7/13/2004 11:12:32 AM    --host.domain.com(192.168.y.y)--SSL Disabled
	Getting repository Structure.
----7/13/2004 11:12:41 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	Login
----7/13/2004 11:12:41 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	GetUserOptions returned: Success
----7/13/2004 11:12:41 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	GetRepositories returned: Success
----7/13/2004 11:12:42 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	Getting repository Structure.
----7/13/2004 11:12:42 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	GetRepositoryStructure returned: Success
----7/13/2004 11:12:42 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	Getting list of checkout changes.
----7/13/2004 11:12:42 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	GetCheckOutListChanges returned: Success
----7/13/2004 11:12:43 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	Getting list of checkout changes.
----7/13/2004 11:12:43 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	GetCheckOutListChanges returned: Success
----7/13/2004 11:12:43 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	ListCloakedObjects returned: Success
----7/13/2004 11:12:43 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	GetRepositoryOptions returned: Success
----7/13/2004 11:12:44 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	BeginTx beginning transaction
----7/13/2004 11:12:44 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	BeginTx returned:  Success
----7/13/2004 11:12:44 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	VaultServiceBase.VaultRequestCheckIn returned: Success
----7/13/2004 11:12:44 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	Uploading file.
----7/13/2004 11:12:44 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	VaultFileUpload.aspx encountered:  Success
----7/13/2004 11:12:44 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	Ending transaction
----7/13/2004 11:12:44 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	VaultServiceBase.VaultResponseCheckIn returned: FailDeltaApply
----7/13/2004 11:12:44 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	EndTxFailDeltaApply
----7/13/2004 11:12:44 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	Getting repository Structure.
----7/13/2004 11:12:44 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	GetRepositoryStructure returned: Success
----7/13/2004 11:12:45 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	Getting list of checkout changes.
----7/13/2004 11:12:45 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	GetCheckOutListChanges returned: Success
----7/13/2004 11:12:45 AM    <USERNAME>--192.168.x.x(192.168.x.x)--SSL Disabled
	Logout
Is there any other information I can get you to help reproduce the problem?

Thanks!
Ben

Post Reply